mysqli::begin_transaction
mysqli::begin_transaction
mysqli_begin_transaction
(PHP 5 >= 5.5.0, PHP 7)
mysqli::begin_transaction -- mysqli_begin_transaction — Starts a transaction
Description
Object oriented style (method):
public bool mysqli::begin_transaction ([ int $flags [, string $name ]] )
Procedural style:
bool mysqli_begin_transaction ( mysqli $link [, int $flags [, string $name ]] )
Begins a transaction. Requires MySQL 5.6 and above, and the InnoDB engine (it is enabled by default). For additional details about how MySQL transactions work, see » http://dev.mysql.com/doc/mysql/en/commit.html.
Parameters
-
link
-
Procedural style only: A link identifier returned by mysqli_connect() or mysqli_init()
-
flags
-
Valid flags are:
-
MYSQLI_TRANS_START_READ_ONLY
: Start the transaction as "START TRANSACTION READ ONLY". -
MYSQLI_TRANS_START_READ_WRITE
: Start the transaction as "START TRANSACTION READ WRITE". -
MYSQLI_TRANS_START_WITH_CONSISTENT_SNAPSHOT
: Start the transaction as "START TRANSACTION WITH CONSISTENT SNAPSHOT".
-
-
name
-
Savepoint name for the transaction.
Return Values
Returns TRUE
on success or FALSE
on failure.
Examples
Example #1 $mysqli->begin_transaction() example
Object oriented style
<?php $mysqli = new mysqli("127.0.0.1", "my_user", "my_password", "sakila"); if ($mysqli->connect_errno) { printf("Connect failed: %s\n", $mysqli->connect_error); exit(); } $mysqli->begin_transaction(MYSQLI_TRANS_START_READ_ONLY); $mysqli->query("SELECT first_name, last_name FROM actor"); $mysqli->commit(); $mysqli->close(); ?>
Procedural style
<?php $link = mysqli_connect("127.0.0.1", "my_user", "my_password", "sakila"); if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit(); } mysqli_begin_transaction($link, MYSQLI_TRANS_START_READ_ONLY); mysqli_query($link, "SELECT first_name, last_name FROM actor LIMIT 1"); mysqli_commit($link); mysqli_close($link); ?>
See Also
- mysqli_autocommit() - Turns on or off auto-committing database modifications
- mysqli_commit() - Commits the current transaction
- mysqli_rollback() - Rolls back current transaction
© 1997–2017 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://secure.php.net/manual/en/mysqli.begin-transaction.php