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程序设计有所帮助。