Mysql基本用法-存储引擎-04

MYSQL中只有 INNODBBDB 类型的数据表才能支持事务处理!其他的类型是不支持的!(切记!)

 

Mysql基本用法-存储引擎-02中的test_user表phpcvs表

 

<?php
	echo "transaction<br>";
	$conn = mysql_connect("localhost","root","");
	if(!$conn){
		die(mysql_error());
	}
	mysql_select_db("test");
	$sql = "update phpcvs set name='fff04' where id=3";
	$sql2 = "update phpcvs set name='abcd' where id=2";
	$sqlArr = array($sql,$sql2);  //把sql放在数组中
	//var_dump($sqlArr);
	mysql_query("SET AUTOCOMMIT=0");
	mysql_query("begin");  //事务开始
	foreach ($sqlArr as $key => $value) {  //遍历sql
		# code...
		if(!mysql_query($value)){  //执行sql,在没有全部执行的时候。
			$status = 0;  //设定一个状态值
		}else{
			$status = 1;
		}
	}
	//echo $status;
	if($status==0){  //$status==0时,没有全部执行sql
		echo "rollback<br>";
		mysql_query("rollback");  //事务回滚
	}else{
		mysql_query("commit");
	}	
?>

  

posted @ 2014-05-06 15:22  半颠者  阅读(135)  评论(0编辑  收藏  举报