vike681 发表于 2017-3-21 07:08:06

php pdo事务


PDO的事务

PDO能够实现事务管理,但是前提条件是所使用的数据库也必须支持事务。

1.开始事务

开始一个事务使用beginTransaction()方法,该方法的语法格式如下:


[*]01boolbeginTransaction(void)


beginTransaction()方法将会关闭自动提交(autocommit)模式,直到事务提交或者回滚以后才能恢复。

2.提交事务

提交事务使用commit()方法,该方法的语法格式如下:


[*]01boolcommit(void)


如果提交成功则返回true,否则返回false。

3.回滚

回滚事务使用rollBack()方法,该方法的语法格式如下:


[*]01boolrollBack(void)


下面是一个使用PDO事务的示例:

【程序11-19】光盘\code\11\pdo\transaction.php


[*]01<?php
[*]02try{
[*]
03$dsn='mysql:dbname=sunyang;host=localhost';
[*]
04$user_name='root';
[*]
05$user_psw='root';
[*]
06$pdo=newPDO($dsn,$user_name,$user_psw);
[*]
07$pdo->beginTransaction();//开始事务
[*]
08$pdo->exec("updateemployeesetemp_age=28whereemp_id=3");
[*]
09$pdo->exec("deletefromemployeewhereemp_id=2");
[*]
10$pdo->commit();//提交事务
[*]
11}catch(Exception$e){
[*]
12$pdo->rollBack();//回滚事务
[*]
13echo$e->getMessage();
[*]14}
[*]15?>
页: [1]
查看完整版本: php pdo事务