执行语句中有一个错误,为什么没有回滚,是代码写错了吗? 10
<?php$pdo=newPDO('mysql:host=localhost;dbname=test','root','');$pdo->exec('setnamesut...
<?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();
}
?> 展开
$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个回答
展开全部
On Error GoTo 0表示禁止当前过程中任何已启动的错误处理程序。On Error Resume Next说明当一个运行时错误发生时,控件转到紧接着发生错误的语句之后的语句,并在此继续运行。访问对象时要使用这种形式而不使用 On Error GoTo。On Error GoTo line启动错误处理程序,且该例程从必要的 line 参数中指定的 line 开始。line 参数可以是任何行标签或行号。如果发生一个运行时错误,则控件会跳到 line,激活错误处理程序。指定的 line 必须在一个过程中,这个过程与 On Error 语句相同; 否则会发生编译时间错误。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询