(PHP 5 >= 5.5.0, PHP 7)
mysqli::begin_transaction -- mysqli_begin_transaction — Inicia una transacción
Estilo orientado a objetos (método):
$flags
[, string $name
]] ) : boolEstilo por procedimientos:
Comienza una transacción. Requiere MySQL 5.6 y superior, y el motor InnoDB (está habilitado por defecto). Para detalles adicionales sobre cómo funcionan las transacciones de MySQL, véase » http://dev.mysql.com/doc/mysql/en/commit.html.
link
Sólo estilo por procediminetos: Un identificador de enlace devuelto por mysqli_connect() o mysqli_init()
flags
Banderas. Las válidas son:
MYSQLI_TRANS_START_READ_ONLY
:
Inicia la transacción como "START TRANSACTION READ ONLY".
MYSQLI_TRANS_START_READ_WRITE
:
Inicia la transacción como "START TRANSACTION READ WRITE".
MYSQLI_TRANS_START_WITH_CONSISTENT_SNAPSHOT
:
Inicia la transacción como "START TRANSACTION WITH CONSISTENT SNAPSHOT".
name
Nombre del punto de prevención de la transacción.
Devuelve TRUE
en caso de éxito o FALSE
en caso de error.
Ejemplo #1 Ejemplo de $mysqli->begin_transaction()
Estilo orientado a objetos
<?php
$mysqli = new mysqli("127.0.0.1", "mi_usuario", "mi_contraseña", "sakila");
if ($mysqli->connect_errno) {
printf("Conexión fallida: %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();
?>
Estilo por procedimientos
<?php
$enlace = mysqli_connect("127.0.0.1", "mi_usuario", "mi_contraseña", "sakila");
if (mysqli_connect_errno()) {
printf("Conexión fallida: %s\n", mysqli_connect_error());
exit();
}
mysqli_begin_transaction($enlace, MYSQLI_TRANS_START_READ_ONLY);
mysqli_query($enlace, "SELECT first_name, last_name FROM actor LIMIT 1");
mysqli_commit($enlace);
mysqli_close($enlace);
?>