PHPでは、MySQLデータベースを使用する場合、トランザクション管理はデータの一貫性と整合性を確保するための重要な手段です。トランザクション制御機能を通じて、これらの操作が、例外が発生したときに正常に送信またはロールバックされ、データの矛盾を回避できるようにすることができます。
この記事では、 connect()関数とのデータベース接続を作成し、 mysqli_begin_transaction() 、 mysqli_commit() 、 mysqli_rollback()関数を使用してデータベーストランザクション管理を実装する方法を紹介します。
まず、 connect()関数(ここではmysqli_connectでデモンストレーションするために使用されます)を使用します。例のデモンストレーションについては、すべてのURLドメインをM66.netに置き換えます。
<?php
$host = "m66.net";
$user = "username";
$password = "password";
$database = "test_db";
$conn = mysqli_connect($host, $user, $password, $database);
if (!$conn) {
die("接続に失敗しました: " . mysqli_connect_error());
}
?>
接続が成功した後、 mysqli_begin_transaction()関数を呼び出してトランザクションを開始できます。
<?php
// トランザクションを開始します
mysqli_begin_transaction($conn);
?>
提出またはロールバックされるトランザクションで複数のSQLステートメントを実行します。
<?php
mysqli_close($conn);
?>