赣南脐橙

佰草伐

导航

PDO中的事务处理具体介绍

在PDO 中同样可以实现事务处理的功能,其应用的方法如下:

(1) 开启事务——beginTransaction()方法。

beginTransaction()方法将关闭自动提交(autocommit)模式,直到事务提交或者回滚以后才恢复。大理石平台价格表

(2)提交事务——commit()方法

commit()方法完成事务的提交操作,成功返回true,否则返回false。

(3)事务回滚——rollBack()方法

rollBack()方法执行事务的回滚操作。

通过 prepare()和 execute()方法向数据库中添加数据,并且通过事务处理机制确保数据能够正确的添加到数据库中,具体步骤如下:

创建一个php文件,首先定义数据库连接参数,创建 try{...}catch{...}语句,在try{}语句中实例化 PDO构造函数,完成与数据库的连接,并且通过 beginTransaction()方法开启事务,然后定义INSERT 添加语句,通过$_POST[]方法获取表单中提交的数据,通过prepare()和 execute()方法向数据库中添加数据,并且通过commit(0方法完成事务的提交操作,最后 在catch{}语句中返回错误信息,并且通过 rollBack()方法执行事务的回滚操作,具体代码如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

<form action="3.php" name="form1" method="post">

    用户名:<input type="text" name="username">

    密码:  <input type="password" name="password">

    <input type="submit" name="Submit" value="提交">

</form>

<?php

header("Content-Type:text/html; charset=utf-8");    //设置页面的编码格式

$name =$_POST['username'];

$password =$_POST['password'];

if($_POST['username']!=""&&$_POST['password']!=""){

    $dbms = "mysql";                                  // 数据库的类型

    $dbName ="php_cn";                                //使用的数据库名称

    $user = "root";                                   //使用的数据库用户名

    $pwd = "root";                                    //使用的数据库密码

    $host = "localhost";                              //使用的主机名称

    $dsn  = "$dbms:host=$host;dbname=$dbName";

try{

    $pdo=new PDO($dsn,$user,$pwd);//初始化一个PDO对象,就是创建了数据库连接对象$pdo

    $pdo -> beginTransaction();   //开始事务

    $query="insert into `user`(username,password) VALUES ('$name','$password')";//需要执行的sql语句

    $res=$pdo->prepare($query);//准备查询语句

    $res->execute();            //执行查询语句,并返回结果集

    if($res->errorCode()){

        echo "数据添加成功";

    }else{

        echo "数据添加失败";

    }

    $pdo->commit();            //执行事务的提交操作

}catch (PDOException $e){

    die("Error!:".$e->getMessage().'<br>');

 $pdo -> rollBack();             //执行事务的回滚

}

}

?>

posted on 2020-01-13 14:30  佰草伐  阅读(241)  评论(0编辑  收藏  举报

自定义导航网站

php基础知识

Wood Furniture