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?>
分享到:
相关推荐
PHP PDO 事务与自动提交 现在通过 PDO 连接上了,在开始进行查询前,必须先理解 PDO 是如何管理事务的。 事务支持四大特性(ACID): 原子性(Atomicity) 一致性(Consistency) 隔离性(Isolation) 持久性...
以下是一个完整的PHP PDO事务处理示例: ```php <?php $pdo = new PDO("mysql:host=localhost;dbname=testdb", 'username', 'password'); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $pdo->...
此外,对于开发者来说,了解Oracle的数据类型、SQL语法以及PHP的PDO特性也是十分必要的,例如预处理语句、事务处理、游标操作等,这些都将直接影响到Oracle数据库的高效使用。 总之,php_pdo_oci.dll是PHP与Oracle...
总结起来,"php完美pdo类封装"是为了简化和优化PHP中的数据库操作,通过单例模式管理数据库连接,利用预处理语句提升安全性,提供丰富的操作接口,同时包含事务处理等功能,以提高代码的可读性和维护性。`Db.class....
标题 "php_pdo_mysql.dll_dll_PDO_MYSQL_php_" 暗示了我们正在讨论的是PHP的一个扩展,即PDO_MYSQL,它是一个用于MySQL数据库连接的PHP数据对象(PDO)驱动。PDO_MYSQL允许PHP应用程序使用PDO接口与MySQL服务器进行...
4. **事务支持**:PDO提供了事务处理功能,确保了数据的一致性和完整性。 5. **更好的性能**:由于PDO是用C语言编写的,其性能通常优于PHP原生的数据库扩展。 【PDO的安装】 在Windows环境下,安装PDO通常涉及以下...
PDO不仅提供了对多种数据库的支持,还引入了预处理语句、事务处理等高级特性,极大地提高了数据操作的安全性和效率。 一、PDO扩展的核心概念 1. 数据库驱动:PDO本身并不直接连接数据库,而是通过一系列的驱动实现...
通过PDO,你可以执行SQL查询、事务处理、预处理语句等操作,大大增强了PHP与SQL Server之间的交互能力。例如,你可以使用预处理语句来提高安全性并防止SQL注入攻击: ```php $stmt = $conn->prepare("INSERT INTO ...
以下是一个具体的PHP PDO事务处理的例子: ```php try { $dbms = 'mysql'; $dbname = 'biaoge'; $user = 'root'; $pwd = '123456'; $host = 'localhost'; $dsn = "$dbms:host=$host;dbname=$dbname"; $pdo ...
PHP PDO(PHP Data Objects)是PHP的一个扩展,用于提供数据库访问的抽象层,它支持多种数据库引擎,包括MySQL。PHP PDO 提供了一种统一的API,使得开发者可以在不同的数据库之间轻松切换,同时提供了预处理语句,...
- **事务处理**:PDO_DBLIB支持事务,确保数据的一致性和完整性。 - **错误处理模式**:可以设置不同的错误处理模式,如异常或警告。 2. **安装与配置** - 在Linux或Unix系统中,需要先安装FreeTDS和pdo_dblib...
最后,为了深入理解PHP中的PDO事务处理以及其它数据库操作技巧,可以查看相关的专题文章,如《PHP基于pdo操作数据库技巧总结》、《php+Oracle数据库程序设计技巧总结》等,这些文章提供了更多深入的技巧和最佳实践,...
4. **事务处理**:PDO_INFORMIX支持事务,通过`PDO::beginTransaction()`开始事务,`PDO::commit()`提交事务,`PDO::rollBack()`回滚事务,确保数据的一致性。 5. **错误处理**:可以设置错误模式,例如`PDO::...
### PHP的PDO类教程知识点详解 #### 一、PDO简介 **PDO (PHP Data Objects)** 是PHP中的一个数据库访问抽象层,它提供了统一的方式去访问多种数据库系统。PDO的主要目标是提供一种轻量级、清晰且方便的API,使得...
- **事务处理**:PDO支持通过`beginTransaction()`、`commit()`和`rollBack()`进行事务管理。 - **错误处理**:可以通过设置PDO实例的错误模式来改变错误处理方式。 #### 六、总结 PDO作为PHP中的数据库访问层,极...
通过使用PDO,开发人员可以利用面向对象的方法来执行SQL查询,处理结果集,并进行事务管理。 "ODBC和php_pdo_sqlsrv扩展文件.zip"这个压缩包包含的文件是用来安装和配置PHP连接SQL Server所需的重要组件。SQLSRV59....
4. 支持事务:PDO支持事务处理,确保数据的一致性和完整性。 综上所述,"php_pdo_sqlsrv_54_nts"是PHP 5.4非线程安全版本的PDO SQL Server扩展,用于在Windows环境中连接到SQL Server数据库。提供的其他DLL文件是...
PDO(PHP Data Objects)是PHP语言中用于数据库访问的一个扩展,它提供了一种数据库独立的接口,支持多种数据库系统,如MySQL、SQLite、PostgreSQL等。封装PDO类是为了更好地管理和操作数据库,使得代码更加模块化,...
- **PHPPDO类**:这里指的是使用PHP编写的自定义PDO数据库操作类。 综上所述,PHP-PDO数据库操作类是为简化数据库操作和提高安全性而设计的。通过自定义PDO类,可以更好地组织和管理数据库相关的代码,同时充分...