mysql事务rollback&commit

mysql_query("BEGIN");//开始一个事务  
mysql_query("SET AUTOCOMMIT=0"); //设置事务不自动commit  
 $insert="INSERT INTO userinfo VALUES ('aa12','aa','1','aaa')";  
mysql_query($insert);  
mysql_query("COMMIT");//非autocommit模式,必须手动执行COMMIT使操作生效  
//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");//非autocommit模式,执行ROLLBACK使事务操作无效  
else echo "ok";  
//mysql_query("CLOSE");  
mysql_query("SET AUTOCOMMIT=1");//恢复autocommit模式  
$insert="INSERT INTO userinfo VALUES ('aa15','aa','1','aaa')";  
mysql_query($insert);//不需要手动执行COMMIT就可以使事务操作生效


你可能感兴趣的:(mysql,PHP)