首页 > php开发 > adodb的事务处理咋没效果

adodb的事务处理咋没效果

问题:adodb的事务处理为什么没效果?

解决方法:数据表都是InnoDB类型的,看下面的代码,第二条sql语句是错的,第一条语句却执行了

<?php
include dirname(__FILE__).'adodbadodb.inc.php'; 
include dirname(__FILE__).'bbsconfig.inc.php'; 
$ADODB_FETCH_MODE = ADODB_FETCH_ASSOC; 
$db = &ADONewConnection('mysql'); 
$db->Connect($dbhost, $dbuser, $dbpw, $dbname); 
$db->debug=1; 
$db->StartTrans(); 
$db->Execute("update table1 set fieldid=fieldid+1");  
$db->Execute("update table2 set joinid1=joinid+1 where id=11"); 
$db->CompleteTrans(); 
?>

执行后的结果:第一条sql语句执行,第二条sql语句不执行。这里根本没有起到事务的效果。

网上讨论比较多的是:
 

$db = &ADONewConnection('mysql'); 
改成$db = &ADONewConnection('mysqlt');或者$db = &ADONewConnection('mysqli');

可是改了还是不行,网友建意:

$db = &ADONewConnection('mysql'); 
$db->Connect($dbhost, $dbuser, $dbpw, $dbname);

永久地址:http://www.phprm.com/develop/fs542.html

转载随意~请带上教程地址吧^^

标签:adodb 事务处理

相关文章

发表留言