sql >> Databasteknik >  >> RDS >> Mysql

PHP &mySQL:Enkel kod för att implementera Transaktion - Commit &Rollback

Du behöver inte använda mysqli. Du kan bara utfärda transaktionskommandona som frågor.

Så för ditt exempel:

mysql_query("start transaction;");

//db_res calls a custom function that performs a mysql_query on the query
$res1 = db_res("SELECT c1, c2 FROM t1 WHERE c5 = 3");
$res2 = db_res("UPDATE t2 SET c1 = 5 WHERE c2 = 10");
$res3 = db_res("DELETE FROM t3 WHERE c1 = 20");

if( $res1 && $res2 && $res3 )
{
  mysql_query("commit;");
}
else
{
  mysql_query("rollback;");
}

Förresten, om du funderar på att uppgradera till mysqli, snälla gör det inte. Uppgradera till PDO istället, det är mycket mer förnuftigt.



  1. Hur man hittar platsen för datafiler och loggfiler i SQL Server

  2. Hur kan jag stoppa ett Postgres-skript när det stöter på ett fel?

  3. Hur ändrar man datumformatet från MM/DD/ÅÅÅÅ till ÅÅÅÅ-MM-DD i PL/SQL?

  4. PostgreSQL procedurspråk C hittades inte