php中在PDO中使用事务(Transaction)

  并且在执行的过程中, 如果其中的某条执行失败, 可以回滚所有已更改的操作. 如果执行成功, 那么这一系列操作都会永久有效. 事务很好的解决了在操作数据库的时候不同步的问题. 同时, 通过事务去执行大数据量的时候, 执行效率可以提高很多很多.

  在 PDO 中, 事务已经显得非常简单. 下面一个基本的例子, 演示了向 SQLite 数据库插入 1000000 条数据, 并且在出错的时候回滚.

  

复制代码 代码如下:

  try

  {

  $conn = new PDO('sqlite:Transactioion.s3db');

  $conn->beginTransaction();

  for($i=0; $i<1000000; $i++)

  {

  $conn->exec("insert into [users] values(null,'username')");

  }

  $conn->commit();

  }

  catch(PDOException $ex)

  {

  $conn->rollBack();

  }