Funzione mysqli_begin_transaction () di PHP

Definizione e utilizzo

Il mysqli_begin_transaction() viene utilizzato per avviare una nuova transazione.

Sintassi

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

Parametri

Suor n Parametro e descrizione
1

con(Mandatory)

Questo è un oggetto che rappresenta una connessione a MySQL Server.

2

flags(Optional)

Una costante che può essere una delle seguenti:

  • MYSQLI_TRANS_START_READ_ONLY

  • MYSQLI_TRANS_START_READ_WRITE

  • MYSQLI_TRANS_START_WITH_CONSISTENT_SNAPSHOT

3

name(Optional)

Questo è un valore stringa che rappresenta il nome del punto di salvataggio della transazione.

Valori restituiti

La funzione mysqli_begin_transaction () di PHP restituisce un valore booleano che è true se l'operazione ha successo e false in caso contrario.

Versione PHP

Questa funzione è stata introdotta per la prima volta nella versione 5 di PHP e funziona in tutte le versioni successive.

Esempio

L'esempio seguente mostra l'utilizzo della funzione mysqli_begin_transaction () (in stile procedurale) -

<?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);
?>

Questo produrrà il seguente risultato:

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

Esempio

La sintassi di questo metodo nello stile orientato agli oggetti è $ con> begin_transaction () . Di seguito è riportato un esempio di questa funzione in modalità orientata agli oggetti $ meno;

//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();
?>

Questo produrrà il seguente risultato:

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