为了账号安全,请及时绑定邮箱和手机立即绑定

如下执行语句中有一个错误,为什么没有回滚,是代码写错了吗?该怎么解决?

如下执行语句中有一个错误,为什么没有回滚,是代码写错了吗?该怎么解决?

PHP C
智慧大石 2022-05-05 11:07:00
<?php$pdo=new PDO('mysql:host=localhost;dbname=test','root','');$pdo->exec('set names utf8');$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);try{$pdo->beginTransaction();$sql="delete from user where id=10";$smt=$pdo->prepare($sql);$smt->execute();$sql="delete fom user where id=8";$smt=$pdo->prepare($sql);$smt->execute();$pdo->commit();}catch(PDOException $e){echo $e->getMessage();$pdo->rollBack();}
查看完整描述

1 回答

?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

On Error GoTo 0表示禁止当前过程中任何已启动的错误处理程序。On Error Resume Next说明当一个运行时错误发生时,控件转到紧接着发生错误的语句之后的语句,并在此继续运行。访问对象时要使用这种形式而不使用 On Error GoTo。On Error GoTo line启动错误处理程序,且该例程从必要的 line 参数中指定的 line 开始。line 参数可以是任何行标签或行号。如果发生一个运行时错误,则控件会跳到 line,激活错误处理程序。指定的 line 必须在一个过程中,这个过程与 On Error 语句相同; 否则会发生编译时间错误。

查看完整回答
反对 回复 2022-05-09
  • 1 回答
  • 0 关注
  • 128 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信