1.
Q: 如何使用事務rollback
A: 如下例所示:
$sql = "insert into e_shortcut set admin_id = 1 , function_id = 1 , sequence = '0'";
""//或者$sql = "update e_shortcut set admin_id = 1 , function_id = 1 , sequence = '0' where shortcut_id='1'";""
$db->autoCommit(false); ""//如果這里使用非false/0類型值[連'-1'之類的都不可以],神仙也救不了你 :)""
$db->simpleQuery($sql); ""//只有用simpleQuery()才可以支持哦""
$db->rollback(); ""//還可以后悔""
Note: 如果是 MySQL 數據表類型必須為 InnoDB 才可以
......2004-8-24 11:13上午
----
2.
Q: 如何連接數據庫
A: 采用 DSN 方式連接,如下所示:
$dsn = 'mysql://root:@localhost/test';
$db = new DB;
$db = DB::connect($dsn);
if (DB::isError($db))
{
die(@DB::errorMessage($db));
}
......2004-8-24 11:15上午
----
3.
幾種常見的使用方法:
1.) 取出全部記錄
$sql = "select * from e_shortcut";
$res = $db->getAll($sql,$params = null,$fetchmode = DB_FETCHMODE_DEFAULT);
{
....
}
2.) 只取出第一行
$sql = "select * from e_shortcut";
$res = $db->getRow($sql,$params = null,$fetchmode = DB_FETCHMODE_DEFAULT);
{
....
}
3.) 提交一個insert/query/delete查詢
$sql = "delete from e_shortcut where shortcut_id = '1'";
""//或者$sql = "update e_shortcut set admin_id = 1 , function_id = 1 , sequence = '0' where shortcut='1'";""
""//或者$sql = "insert e_shortcut set admin_id = 1 , function_id = 1 , sequence = '0'";""
$db->query($sql);
如果想要支持事務,可以采用上述方法
4.) 循環取得結果
$result = array();
$sql = "select * from e_shortcut1";
$res = $db->query($sql);
while($row = $res->fetchRow())
{
....
}
......2004-8-24 15:20上午
原文轉自:http://www.anti-gravitydesign.com