“Mnemi”的版本间的差异
(→Class DB) |
(→Class DB) |
||
第30行: | 第30行: | ||
则$result[1][1]或$result[1][name]都可以得到Mike。 | 则$result[1][1]或$result[1][name]都可以得到Mike。 | ||
+ | |||
+ | mixed get(string $table, string $cols, [string $condition]): 运行SELECT $cols FROM $table [WHERE $condition],返回如'''run'''成员函数所描述的数据数组(可能为二维空数组)。$table、$cols、$condition都可以是很复杂的字符串,只要组成的SELECT语句合法即可。当运行出错时返回FALSE。注意:当无条件返回所有行的数据、却希望对结果有所处理(如排序),不能调用$dbinstance->get('table', 'id,name', 'oRDER BY id'),因为这样会形成“WHERE ORDER BY id”这样的非法SQL语句。解决方法是把$condition写为'TRUE ORDER BY id'。 |
2013年12月21日 (六) 11:14的版本
Classes
Class DB
初始化(以下两种调用是等价的):
$dbvar = new DB("dbname");
$dbvar = new DB();
$dbvar->usedb("dbname");
public $err: 存储刚刚失败的数据库操作错误信息。如果刚刚的数据库操作是成功的,则err被重置为空字符串。当此字符串不为空时,它的格式是,一个短代码(如DBOPERR),后面跟一个空格,后面再跟mysqli类库的error成员字符串内容(易于理解的文本)。
bool open([string $db]): 连通Mnemi数据库服务器,并(如果$db为非空字符串)使用$db所指定的数据库。如果连接成功则返回TRUE,否则返回FALSE。
bool usedb(string $db): 使用$db所指定的数据库,即以后的操作默认在此数据库执行。如果函数成功则返回TRUE,否则返回FALSE。
mixed run(string $sql): 运行SQL命令。如果函数执行不成功,则返回FALSE。如果SQL语句为空,则不做任何操作并返回TRUE。如果SQL语句为不期待返回数据的命令,且执行成功,则返回TRUE。如果SQL语句有数据结果(如SELECT语句),则返回值为一个数组(array),数组的第一维是行,第二维是列。数据可以按照列名索引,也可以按照列号索引。就是说,如果调用
$result = $dbinstance->run('SELECT id,name FROM school WHERE age > 20');
返回
id | name |
---|---|
0031 | Tom |
0045 | Mike |
则$result[1][1]或$result[1][name]都可以得到Mike。
mixed get(string $table, string $cols, [string $condition]): 运行SELECT $cols FROM $table [WHERE $condition],返回如run成员函数所描述的数据数组(可能为二维空数组)。$table、$cols、$condition都可以是很复杂的字符串,只要组成的SELECT语句合法即可。当运行出错时返回FALSE。注意:当无条件返回所有行的数据、却希望对结果有所处理(如排序),不能调用$dbinstance->get('table', 'id,name', 'oRDER BY id'),因为这样会形成“WHERE ORDER BY id”这样的非法SQL语句。解决方法是把$condition写为'TRUE ORDER BY id'。