gpt4 book ai didi

php - mysql_query ("ROLLBACK");不起作用

转载 作者:行者123 更新时间:2023-11-30 22:57:29 27 4
gpt4 key购买 nike

此代码使用存储在 $in 中的所有查询进行交易。例如$in = "查询1;查询2;查询3;"

当其中一个失败时,它被回滚但没有效果,没有错误的查询被插入到数据库中

    $conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('ERR');
}

mysql_select_db('db445123652');

mysql_query("START TRANSACTION");


$strlen = strlen( $in);

$ini = 0;

for( $i = 0; $i <= $strlen; $i++ ) {
$char = substr( $in, $i, 1 );

if($char == ';' )
{

$resul = mysql_query(substr( $in, $ini, $i ));


if(!$resul)
{
echo mysql_error();
mysql_query("ROLLBACK");
echo 'Rollback';
break;

}
else{

$ini = $i + 1;

}


}

}


if($i==($strlen+1) && $resul)
{
echo 'OK';
mysql_query("COMMIT");

}

数据库位于 1&1 主机中,我通过 phpmyadmin 访问。

最佳答案

检查你的数据库是否为表引擎,是否设置为 InnoDb。
MyISAM 和 Innodb 之间的区别引用 http://www.rackspace.com/knowledge_center/article/mysql-engines-myisam-vs-innodb

关于php - mysql_query ("ROLLBACK");不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25659334/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com