PHP mysqli事務操作常用方法分析

2022-10-05 01:48:11 字數 1427 閱讀 9684

1、//開啟(true)或關閉(false)本次資料庫連線的自動命令提交事務模式

//引數如果設定為 false,則表示關閉 auto-commit。如果設定為 true,則表示開啟 auto-commit(提交任何等待查詢)。

bool mysqli::autocommit ( bool $mode )

2、//回退當前事務

bool mysqli::rollback ()

3、//提交乙個事務

bool mysqli::commit ()

4、//關閉先前開啟的資料庫連線

bool mysqli::clowww.cppcns.comse ()

5、//對資料庫執行一次查詢

//失敗時返回 false,通過mysqli_query() 成功執行selecnutt**okjt, show, describe或 explain查詢會返回乙個mysqli_result 物件,其他查詢則返回true

//引數$resultmode可選。乙個常量。可以是下列值中的任意乙個:

//mysqli_use_result(如果需要檢索大量資料,請使用這個)

//mysqli_store_result(預設)

mixed mysqli::query ( string $query [, int $resultmode = mysqli_store_result ] )

**示例:

<?php $mysqli = new mysqli("127.0.0.1","ro程式設計客棧ot","111111","test");

if ($mysqli->connect_errno)

//預設auto-commit 是開啟的,可直接提交sql語句

$b1 = $mysqli->query("insert into test (id,name) values (0,'000')");

//若要執行事務,先關閉auto-commit

//關閉 auto-commit

$mysqli->autocommit(false);

$res1 = $mysqli->query("insert into test (id,n1ame) values (1,'111')");

$b2 = $mysqli->query("insert into test (id,name) values (2,'222')");

//有一條失敗則回滾,全部成功則提交

if(!$res1 || !$b2) else

//若想再次自動提交非事務語句,要開啟auto-commit

$mysqli->autocommit(true);

$b3 = $mysqli->query("insert into test (id,name) values (3,'333')");

//關閉連線

$mysqli->close();

?>

PHP MYSQLI中事務處理

mysql事務處理讓所有sql語句執行成功後才去處理,如果有一條沒有成功或者報錯就會回滾事務,防止敏感操作處理失敗。mysql中只有innodb和bdb型別的資料表才能支援事務處理!其它型別是不支援的!mysqli autocommit false 關閉自動提交功能 sql update users...

PHP MYSQLI中事務處理

mysql事務處理讓所有sql語句執行成功後才去處理,如果有一條沒有成功或者報錯就會回滾事務,防止敏感操作處理失敗。mysql中只有innodb和bdb型別的資料表才能支援事務處理!其它型別是不支援的!mysqli autocommit false 關閉自動提交功能 sql update users...

php mysqli事務控制實現銀行轉賬例項

事務控制,也就是說所有的語句執行成功後,才會提交。否則,如果前面有語句執行成功,而後面沒有執行成功,則回滾到執行之前的狀態。通過銀行轉賬的案例來說明這個應用。乙個賬號轉了錢出去,另乙個賬號必須有錢轉入,這樣才算成功。代程式設計客棧碼如下 php 1 建立資料庫連線物件 mysqli new mysq...