Función PHP mysqli_begin_transaction ()

Definición y uso

los mysqli_begin_transaction() se utiliza para iniciar una nueva transacción.

Sintaxis

mysqli_begin_transaction($con, [$flags, $name]);

Parámetros

No Señor Descripción de parámetros
1

con(Mandatory)

Este es un objeto que representa una conexión a MySQL Server.

2

flags(Optional)

Una constante que puede ser una de las siguientes:

  • MYSQLI_TRANS_START_READ_ONLY

  • MYSQLI_TRANS_START_READ_WRITE

  • MYSQLI_TRANS_START_WITH_CONSISTENT_SNAPSHOT

3

name(Optional)

Este es un valor de cadena que representa el nombre del punto de guardado de la transacción.

Valores devueltos

La función PHP mysqli_begin_transaction () devuelve un valor booleano que es verdadero si la operación es exitosa y falso si no.

Versión PHP

Esta función se introdujo por primera vez en PHP Versión 5 y funciona en todas las versiones posteriores.

Ejemplo

El siguiente ejemplo demuestra el uso de la función mysqli_begin_transaction () (en estilo procedimental):

<?php
   //Creating a connection
   $con = mysqli_connect("localhost", "root", "password", "mydb");

   //Beginning the transaction
   mysqli_begin_transaction($con, MYSQLI_TRANS_START_READ_ONLY);
   print("Transaction Started......\n");

   //Creating a table
   mysqli_query($con, "CREATE TABLE Test(Name VARCHAR(255), AGE INT)");
   print("Table Created......\n");

   //Inserting values
   mysqli_query($con, "INSERT INTO Test values('Raju', 25),('Rahman', 30),('Sarmista', 27)");
   print("Records Inserted......\n");

   //Committing the transaction
   mysqli_commit($con);
   print("Transaction Saved......\n");

   //Closing the connection
   mysqli_close($con);
?>

Esto producirá el siguiente resultado:

Transaction Started......
Table Created......
Records Inserted......
Transaction Saved......

Ejemplo

La sintaxis de este método en estilo orientado a objetos es $ con-> begin_transaction () . A continuación se muestra un ejemplo de esta función en el modo orientado a objetos $ minus;

//Creating a connection
$con = new mysqli("localhost", "root", "password", "mydb");

//Beginning the transaction
$con->begin_transaction($con, MYSQLI_TRANS_START_READ_ONLY);
print("Transaction Started......\n");

//Creating a table
$con->query("CREATE TABLE Test(Name VARCHAR(255), AGE INT)");
print("Table Created......\n");

//Inserting values
$con->query("insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27)");
print("Records Inserted......\n");

//Committing the transaction
$con->commit();
print("Transaction Saved......\n");

//Closing the connection
$con->close();
?>

Esto producirá el siguiente resultado:

Transaction Started......
Table Created......
Records Inserted......
Transaction Saved......