TECH I.S.

PHP mysqli_rollback()関数

❮ PHP mysqli リファレンス

例 - オブジェクト指向スタイル

自動コミットをオフにして、いくつかのクエリを作成し、クエリをコミットしてから、現在のトランザクションをロールバックします。

<?php $mysqli = new mysqli("localhost","my_user","my_password","my_db"); if ($mysqli -> connect_errno) {   echo "Failed to connect to MySQL: " . $mysqli -> connect_error;   exit(); } // Turn autocommit off $mysqli -> autocommit(FALSE); // Insert some values $mysqli -> query("INSERT INTO Persons (FirstName,LastName,Age) VALUES ('Peter','Griffin',35)"); $mysqli -> query("INSERT INTO Persons (FirstName,LastName,Age) VALUES ('Glenn','Quagmire',33)"); // Commit transaction if (!$mysqli -> commit()) {   echo "Commit transaction failed";   exit(); } // Rollback transaction $mysqli -> rollback(); $mysqli -> close(); ?>

下部の手続き型スタイルの例を見てください。


定義と使用法

rollback() / mysqli_rollback()関数は、指定されたデータベース接続の現在のトランザクションをロールバックします。

ヒント:現在のトランザクションをコミットするcommit()(func_mysqli_commit){.underline}関数と、データベース変更の自動コミットをオンまたはオフにする autocommit()(func_mysqli_autocommit){.underline}関数にも注目してください。

データベース変更の自動コミットをオンまたはオフにします。


構文

オブジェクト指向スタイル:

<div>$mysqli -> rollback(<em>flags, name</em>)</div>

手続き型のスタイル:

<div>mysqli_rollback(<em>connection, flags, name</em>)</div>

パラメータ値

パラメータ

説明

connection Required 使用するMySQL接続を指定します
flags Optional 定数:
  • MYSQLI_TRANS_COR_AND_CHAIN - 「AND CHAIN」を追加
  • MYSQLI_TRANS_COR_AND_NO_CHAIN - 「AND NO CHAIN」を追加
  • MYSQLI_TRANS_COR_RELEASE - 「RELEASE」を追加
  • MYSQLI_TRANS_COR_NO_RELEASE - 「NO RELEASE」を追加
name Optional このパラメータが指定されている場合にROLLBACK/*name*/が実行されます

Technical Details

Return Value: 成功した場合はTRUE。失敗した場合はFALSE

PHP バージョン:

5+

PHP 変更ログ:

PHP 5.5: を追加flagsnameパラメーター

例 - 手続き型スタイル

自動コミットをオフにして、いくつかのクエリを作成し、クエリをコミットしてから、現在のトランザクションをロールバックします。

<?php $con=mysqli_connect("localhost","my_user","my_password","my_db"); if (mysqli_connect_errno()) {   echo "Failed to connect to MySQL: " . mysqli_connect_error();   exit; } // Turn autocommit off mysqli_autocommit($con,FALSE); // Insert some values mysqli_query($con,"INSERT INTO Persons (FirstName,LastName,Age) VALUES ('Peter','Griffin',35)"); mysqli_query($con,"INSERT INTO Persons (FirstName,LastName,Age) VALUES ('Glenn','Quagmire',33)"); // Commit transaction if (!$mysqli_commit($con)) {   echo "Commit transaction failed";   exit(); } // Rollback transaction mysqli_rollback($con); // Close connection mysqli_close($con); ?>


❮ PHP mysqli リファレンス


プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細