PDO在PHPMySQL事务处理的例子
本文阐述了PDO在PHP MySQL事务处理使用。分享给你供你参考。具体分析如下:MySQL事务处理中的几个步骤:
1。关闭自动提交2。打开事务3。例外情况下自动抛出异常提示并回滚4。打开自动提交
注意:MySQL InnoDB只有这个驱动程序支持事务处理,默认的MyISAM驱动程序不支持,和下面的实例代码:
复制代码代码如下:< PHP
尝试{
为PDO =新PDO(MySQL:主机= localhost;北京mydb
/ / $ PDO -> setAttribute(PDO::attr_autocommit,0); / /这是自动关闭并提交上述特征的属性设置方法
为PDO -> setAttribute(PDO::::attr_errmode,PDO errmode_exception) / /打开;异常处理
} catch(PDOException,e){
回声数据库连接失败:。a -> GetMessage();
出口;
}
*
*事务处理
*
*张三从李四买了一台2000元的电脑。
*张三账户中的2000元
*给李四账户加2000元。
*将计算机从货物清单中减少
* MyIsAM InnoDB
* /
尝试{
($ PDO ->开始); / /公开交易
美元= 500;
为SQL =更新方式设置价格=价格- { $价格} id是1;
affected_rows美元=美元PDO -> exec($ SQL);
如果(!affected_rows美元)
把新PDOException(张三失败); / /错误异常
为SQL =更新方式设置价格=价格+ { $价格} id是3;
$affected_rows=$pdo->exec ($sql);
如果(!affected_rows美元)
把新PDOException(Li Si的失败);
贸易成功!;
($ PDO ->提交); / /事务提交
} catch(PDOException,e){
echo $ E -> GetMessage();
为PDO ->回滚();
}
为PDO -> setAttribute(PDO::attr_autocommit,1); / /自动提交,如果不提交自动转移不成功。
/ /设置错误报告模式errmode_silent errmode_warning
>
希望本文能对大家的PHP程序设计有所帮助。