ホームページ >バックエンド開発 >PHPチュートリアル >ロールバック php+mysql トランザクションのロールバックとコミットの例

ロールバック php+mysql トランザクションのロールバックとコミットの例

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-07-29 08:41:441029ブラウズ

mysql_query("BEGIN"); //トランザクションを開始します
mysql_query("SET AUTOCOMMIT=0") //トランザクションを自動的にコミットしないように設定します
$insert="INSERT INTO userinfo VALUES ('aa12','aa', '1 ','aaa')";
mysql_query($insert);
mysql_query("COMMIT");//非自動コミット モード、操作を有効にするには COMMIT を手動で実行する必要があります
//mysql_query("SET AUTOCOMMIT =0");
$insert="ユーザー情報の値に挿入 ('aa20','aa','1','aaa')";
$insert="ユーザー情報の値に挿入 ('aa8','aa' ,'1')" ;
//mysql_query("COMMIT");
if(mysql_num_rows==0)
mysql_query("ROLLBACK");//非自動コミットモードでは、ROLLBACK を実行するとトランザクション操作が無効になります
else echo "ok";
//mysql_query("CLOSE");
mysql_query("SET AUTOCOMMIT=1");//自動コミット モードを復元します
$insert="INSERT INTO userinfo VALUES ('aa15','aa', '1','aaa')";
mysql_query($insert);//トランザクション操作を有効にするために手動で COMMIT を実行する必要はありません。
BEGIN の実行後の効果は set autocommit= と同じです。 0、以降にset autocommit=0または1を設定した場合は無効となります。したがって、操作を明確にするために、BEGIN は通常は使用されません。

上記は、ロールバックの内容を含む、ロールバック php+mysql トランザクションのロールバックとコミットの例を紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。