(PHP 5, PHP 7)
mysqli::commit -- mysqli_commit — 現在のトランザクションをコミットする
オブジェクト指向型
$flags
[, string $name
]] )手続き型
データベース接続の現在のトランザクションをコミットします。
link
手続き型のみ: mysqli_connect() あるいは mysqli_init() が返すリンク ID。
flags
定数 MYSQLI_TRANS_COR_*
のビットマスク。
name
指定した場合は、COMMIT/*name*/ を実行します。
成功した場合に TRUE
を、失敗した場合に FALSE
を返します。
バージョン | 説明 |
---|---|
5.5.0 |
flags と name
が追加されました。
|
例1 mysqli::commit() の例
オブジェクト指向型
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* 接続をチェックします */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$mysqli->query("CREATE TABLE Language LIKE CountryLanguage");
/* autocommit を off にします */
$mysqli->autocommit(FALSE);
/* データを挿入します */
$mysqli->query("INSERT INTO Language VALUES ('DEU', 'Bavarian', 'F', 11.2)");
$mysqli->query("INSERT INTO Language VALUES ('DEU', 'Swabian', 'F', 9.4)");
/* トランザクションをコミットします */
if (!$mysqli->commit()) {
print("Transaction commit failed\n");
exit();
}
/* テーブルを削除します */
$mysqli->query("DROP TABLE Language");
/* 接続を閉じます */
$mysqli->close();
?>
手続き型
<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "test");
/* 接続をチェックします */
if (!$link) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
/* autocommit を off にします */
mysqli_autocommit($link, FALSE);
mysqli_query($link, "CREATE TABLE Language LIKE CountryLanguage");
/* データを挿入します */
mysqli_query($link, "INSERT INTO Language VALUES ('DEU', 'Bavarian', 'F', 11.2)");
mysqli_query($link, "INSERT INTO Language VALUES ('DEU', 'Swabian', 'F', 9.4)");
/* トランザクションをコミットします */
if (!mysqli_commit($link)) {
print("Transaction commit failed\n");
exit();
}
/* 接続を閉じます */
mysqli_close($link);
?>