MYSQL中只有INNODB和BDB类型的数据表才能支持事务处理!其他的类型是不支持的!
可以通过SQL语句来更改,sql语句可以这样写:
1
|
ALTER TABLE TABLENAME type = InnoDB;
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
<?PHP
$LinkID =mysql_connect('localhost:3306','root',*******);
mysql_select_db('my_db',$LinkID);
mysql_query("set names utf8");
/* 创建事务 */
mysql_query('START TRANSACTION') or exit(mysql_error());
//mysql_query("BEGIN");
$ssql1="insert into pf_item values('22','我们','30')"; //执行sql 1
if(!mysql_query($ssql1)){
echo $ssql1.mysql_errno().":".mysql_error()."<br>";
mysql_query('ROLLBACK') or exit(mysql_error());//判断当执行失败时回滚
exit;
}
$ssql1="insert into pf_item values('21','hell','10')"; //执行sql 2
if(!mysql_query($ssql1)){
echo $ssql1.mysql_errno().":".mysql_error()."<br>";
mysql_query('ROLLBACK') or exit(mysql_error());//判断当执行失败时回滚
exit;
}
mysql_query('COMMIT') or exit(mysql_error());//执行事务
mysql_close($LinkID);
//mysql_query("END");
?>
|
- 转载:https://sunzhy.blog.csdn.net/article/details/50017535