发新话题
打印

PHP+mysql的事物处理问题

PHP+mysql的事物处理问题

用PHP+mysql,由于程序中需要同时像两个表中插入数据,而且不能插错,因此应该定义一个事物操作。要么两条都做,要么两条都不做。  
我用的mysql4.0不支持存储过程,请问PHP或者mysql中有什么方法可以实现事物操作吗?

TOP

<?php  
$handler=mysql_connect("localhost","","");  
mysql_select_db("task");  
mysql_query("SET  AUTOCOMMIT=0");//设置为不自动提交,因为MYSQL默认立即执行  
mysql_query("BEGIN");//开始事务定义  
if(!mysql_query("insert  into  trans  (id)  values('2')"))  
{  
mysql_query("ROOLBACK");//判断当执行失败时回滚  
}  
if(!mysql_query("insert  into  trans  (id)  values('4')"))  
{  
mysql_query("ROOLBACK");//判断执行失败回滚  
}  
mysql_query("COMMIT");//执行事务  
mysql_close($handler);  
?>

TOP

发新话题