Home  >  Article  >  Backend Development  >  php+mysql transaction rollback&commit example_PHP tutorial

php+mysql transaction rollback&commit example_PHP tutorial

WBOY
WBOYOriginal
2016-07-21 15:41:38947browse

mysql_query("BEGIN");//Start a transaction
mysql_query("SET AUTOCOMMIT=0"); //Set the transaction not to commit automatically
$insert="INSERT INTO userinfo VALUES ('aa12','aa ','1','aaa')";
mysql_query($insert);
mysql_query("COMMIT");//Non-autocommit mode, COMMIT must be executed manually to make the operation effective
//mysql_query ("SET AUTOCOMMIT=0");
$insert="INSERT INTO userinfo VALUES ('aa20','aa','1','aaa')";
$insert="INSERT INTO userinfo VALUES ('aa8','aa','1')";
//mysql_query("COMMIT");
if(mysql_num_rows==0) ​​
mysql_query("ROLLBACK");//not In autocommit mode, execute ROLLBACK to invalidate transaction operations
else echo "ok";
//mysql_query("CLOSE");
mysql_query("SET AUTOCOMMIT=1");//Restore autocommit mode
$insert="INSERT INTO userinfo VALUES ('aa15','aa','1','aaa')";
mysql_query($insert);//There is no need to manually execute COMMIT to make the transaction operation effective

After BEGIN is executed, its effect is the same as set autocommit=0, and it is invalid when set autocommit=0 or 1 is set later. Therefore, to make the operation clear, BEGIN is generally not used.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/321129.htmlTechArticlemysql_query("BEGIN");//Start a transaction mysql_query("SET AUTOCOMMIT=0"); // Set the transaction not to automatically commit $insert="INSERT INTO userinfo VALUES ('aa12','aa','1','aaa')"; mysql_query($...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn