我想在我的php中使用一些事务性mysql,我已经看过了php文档,我需要使用几个函数,
mysqli_begin_transaction
mysqli_rollback
mysqli_commit
我的代码现在看起来像这样,
mysqli_begin_transaction($db_link, MYSQLI_TRANS_START_READ_WRITE);
$sql = "SELECT * FROM table";
$result = mysqli_query($sql);
if(!$result){
$rollback = true;
}
$sql = "SELECT * FROM another";
$result = mysqli_query($sql);
if(!$result){
$rollback = true;
}
$sql = "DELETE FROM table_name WHERE condition;"
mysqli_query($sql);
if(mysqli_affected_rows($db_link) < 0){
$rollback = true;
}
if($rollback){
mysqli_rollback($db_link)
} else {
mysqli_commit($db_link)
}
这是非常粗糙的伪代码,但我的问题是,事务函数都返回值,根据php文档,所以我应该将它们 Package 在条件语句中,如果它们不返回true,则抛出类似的异常。
暂无答案!
目前还没有任何答案,快来回答吧!