mysql pdo 事物,关于PDO事务功能

定义:PDO事务功能,并非PDO额外多出了一项功能,而是将原来MySQL所支持的事务操作进行了一定的封装实现。注意:事务执行是否成功是由MySQL对应的存储引擎是否支持决定的。

1.事务功能回顾:事务是指改变默认的一次操作一次写入数据表的机制,而是通过事务日志记录操作,在最后通过一次性操作写入到数据表。

开启事务:start transaction,写操作停止直接写入数据表,而是记录到事务日志

事务操作:具体的写操作,通常多个步骤多条指令

提交事务:即事务操作结束

成功提交:commit,所有事务日志内容同步到数据表,并清空当前事务日志

失败回滚:rollback,直接清空当前事务日志

2.PDO类中提供一套方案来实现事务操作

$pdo = new PDO('mysql:host=localhost;port=3306;dbname=my_database','root','root');

$pdo->beginTransaction() or die('事务开启失败');//开启事务

$pdo->exec('insert into student values()');//执行事务

//终止事务

$pdo->commit();//成功提交

$pdo->rollback();//失败回滚

3.在事务操作中,有一种回滚点机制,在PDO中没有实现,如果有必要,可以通过SQL指令设置来实现

$pdo = new PDO('mysql:host=localhost;port=3306;dbname=my_database','root','root');

$pdo->beginTransaction() or die('事务开启失败');//开启事务

$pdo->exec('insert into student values()');//执行事务

//设置回滚点

$pdo->exec('savepoint sp1');

//继续执行事务...

//回滚

$pdo->exec('rollback to sp1');

//终止事务

$pdo->commit();//成功提交

$pdo->rollback();//失败回滚

?>

推荐:php教程,php视频教程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值