php -- PDO事务处理
事务处理流程
- 开启事务
PDO::beginTransaction
- 事务操作
所有的实务操作就是增删改
- 事务提交
PDO::commit:成功后提交数据
PDO::rollback:失败后回滚数据
<?php //PDO事务处理
//连接认证
$pdo = new PDO('mysql:host=localhost;dbname=project','root','root'); //1. 开启事务
$res = $pdo->beginTransaction();
//var_dump($res); //2. 事务处理(多条SQL语句执行)
$sql = "update pro_student set s_age = 28 where s_id = 20";
$lines = $pdo->exec($sql);
//var_dump($lines); $sql = "select * from pro_student where s_id = 20";
$stmt = $pdo->query($sql);
//var_dump($stmt->fetch(PDO::FETCH_ASSOC)); //3. 提交事务
if($lines){
//更新成功
$pdo->commit();
}else{
//更新失败
echo '失败';
$pdo->rollback();
}
注意
- 要实现事务处理必须数据表的存储引擎为InnoDB
- 事务必须完整(开启à提交)
php -- PDO事务处理的更多相关文章
- PDO事务处理
PDO事务处理 2014-9-3 10:44:19 By jiancaigege==================================== 概要:将多条sql操作(增删改)作为一个操作单 ...
- PHP PDO事务处理及MYSQLengine=InnoDB
如果出现“#skip-innodb”则将“#”去掉,重启MySQL: 如果第一条无法解决,加上配置:default-storage-engine=InnoDB 再重启MySQL. 进入MYsql数据据 ...
- pdo + 事务处理 处理线性事务
/* * 事物处理线性操作. * 以转账为例 */ header('Content-type:text/html;charset=utf-8'); $opt = array(PDO::ATTR_PER ...
- php大力力 [050节] 兄弟连高洛峰 PHP教程 2014年[数据库、PDO教程]
php大力力 [050节] 兄弟连高洛峰 PHP教程 2014年[数据库.PDO教程] 第14章 数据库252.[2014]兄弟连高洛峰 PHP教程14.1.1 复习数据库[已发布,点击下载]253. ...
- PDO基础知识
使用PDO之前首先开启PHP的PDO扩展,方法见百度. PDO连接数据库的方式有三种 1.通过参数的形式连接数据库 (推荐) //通过参数形式连接数据库 try{ $dsn = 'mysql:host ...
- PHP17 PDO
学习要点 PDO简要 PDO对象 PDO对象的使用 PDOStatement对象 PDO事务处理 PDO简要 PHP支持那些数据库操作 MySQL,Oracle,SQLServer,SQLite.Po ...
- MySQL 、PDO对象
目录 1, singleton 2, pdo与db 3, singleton获取pdo 4, pdo实现db增删改查 5, pdo异常处理exception 6, pdo预处理prepare 7, p ...
- 数据库PDO简介
php简介,php历史,php后端工程师职业前景,php技术方向,php后端工程师职业体系介绍. php是世界上使用最广泛的web开发语言,是超文本预处理器,是一种通用的开源脚本语言,语法吸收了c语言 ...
- PDO 小知识
一.前言 PDO(PHP Data Object)提供了一个通用接口访问多种数据库,即抽象的数据模型支持连接多种数据库. PDO扩展为PHP定义了一个访问数据库的轻量.持久的接口.其本身并不能实现任何 ...
随机推荐
- 【转】使用python编写网络通信程序
文章主体现部分来自:http://openexperience.iteye.com/blog/145701 1. 背景知识 如果使用TCP协议来传递数据,客户端和服务器端需要分别经过以下步骤: ser ...
- 算法笔记_022:字符串的旋转(Java)
目录 1 问题描述 2 解决方案 2.1 蛮力移位 2.2 三步反转 1 问题描述 给定一个字符串,要求将字符串前面的若干个字符移到字符串的尾部.例如,将字符串“abcdef”的前3个字符‘a’.‘b ...
- QtGui.QPen
The QtGui.QPen is an elementary graphics object. It is used to draw lines, curves and outlines of re ...
- Android 读取assets文件下的txt文件
android 读取assets文件下的txt文件,解决了读取txt文件的乱码问题: package com.example.com.scrollview; import java.io.Buffer ...
- 将图片转成base64字符串并在JSP页面显示的Java代码
*本事例主要讲了如下几点: * 1:将图片转换为BASE64加密字符串. * 2:将图片流转换为BASE64加密字符串. * 3:将BASE64加密字符串转换为图片. * 4:在jsp文件中以引 ...
- git——分布式版本控制系统
Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件 ...
- screen 命令使用及示例
screen 是一个非常有用的命令,提供从单个 SSH 会话中使用多个 shell 窗口(会话)的能力.当会话被分离或网络中断时,screen 会话中启动的进程仍将运行,你可以随时重新连接到 scre ...
- JavaScript:使用JavaScript 实现注册表单的校验
说明:在点击提交时进行表单校验,具体要求如下: 1)用户名为3~16个字符,且不能包含”@”和”#”字符: 2)密码和校验密码必须一致,且长度在8个字符到16个字符: 3)兴趣爱好至少选择一项: 4) ...
- 使用vs调试.net源代码
使用.NET Framework库参考源进行调试 您可能会想知道使用.NET Framework参考源的调试方式.在下面的示例中,您将看到一个我调用公用Console.WriteLine方法的工具.从 ...
- Linux关机和重启命令总结
一.shutdown 命令 作用:关闭或重启系统 使用权限:超级管理员使用 常用选项 1. -r 关机后立即重启 2. -h关机后不重启 3. -f快速关机,重启时跳过fsck(file system ...