php学习笔记之事务处理
2016-06-12 00:16
579 查看
1.try-catch
<?php
header("content-type:text/html;charset=utf-8");
$pdo= new PDO("mysql:host=127.0.0.1;dbname=test","root","");
$pdo->query('set names utf8');
try{
//开启事务
$pdo->beginTransaction();
$sql="insert into user(id,name,class) values(?,?,?)";
$stmt=$pdo->prepare($sql);
//传入参数
$stmt->execute(array(3,'limng','六年级旧版'));
$stmt->execute(array(4,'limng','六年级旧版'));
$stmt->execute(array(5,'limng','六年级旧版'));
//提交事物
$pdo->commit();
}catch(PDOException $e) {
die($e->getMessage());
$pdo->roolback();
}
2.foreach结构
<?php
header("content-type:text/html;charset=utf-8");
$pdo= new PDO("mysql:host=127.0.0.1;dbname=test","root","");
$pdo->query('set names utf8');
//开启事务
$pdo->beginTransaction();
$sql="insert into user(id,name,class) values(?,?,?)";
$stmt=$pdo->prepare($sql);
$datalist=array(
array(3,'limng','六年级旧版'),
array(3,'limng','六年级旧版'),
array(3,'limng','六年级旧版')
);
$isCommit=true;
foreach ($datalist as $data) {
$stmt->execute($data);
if($stmt->errorCode()>0){
$pdo->roolback();
$isCommit=false;
break;
}
}
if($isCommit){
$pdo->commit();
}
<?php
header("content-type:text/html;charset=utf-8");
$pdo= new PDO("mysql:host=127.0.0.1;dbname=test","root","");
$pdo->query('set names utf8');
try{
//开启事务
$pdo->beginTransaction();
$sql="insert into user(id,name,class) values(?,?,?)";
$stmt=$pdo->prepare($sql);
//传入参数
$stmt->execute(array(3,'limng','六年级旧版'));
$stmt->execute(array(4,'limng','六年级旧版'));
$stmt->execute(array(5,'limng','六年级旧版'));
//提交事物
$pdo->commit();
}catch(PDOException $e) {
die($e->getMessage());
$pdo->roolback();
}
2.foreach结构
<?php
header("content-type:text/html;charset=utf-8");
$pdo= new PDO("mysql:host=127.0.0.1;dbname=test","root","");
$pdo->query('set names utf8');
//开启事务
$pdo->beginTransaction();
$sql="insert into user(id,name,class) values(?,?,?)";
$stmt=$pdo->prepare($sql);
$datalist=array(
array(3,'limng','六年级旧版'),
array(3,'limng','六年级旧版'),
array(3,'limng','六年级旧版')
);
$isCommit=true;
foreach ($datalist as $data) {
$stmt->execute($data);
if($stmt->errorCode()>0){
$pdo->roolback();
$isCommit=false;
break;
}
}
if($isCommit){
$pdo->commit();
}
相关文章推荐
- 一个关于if else容易迷惑的问题
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- PHP数据库长连接mysql_pconnect的细节
- Php Installing An Expansion
- rem : web app适配的秘密武器
- jquery高级应用之Deferred对象
- php7 读取php.ini[4]
- PHP+Apache在Windows 9x下的安装和配置
- IIS 6 的 PHP 最佳配置方法
- 安装Apache和PHP的一些补充
- Linux Apache+MySQL+PHP
- 建立Apache+PHP+MySQL数据库驱动的动态网站
- PHP 5.3.0 安装分析心得
- apache 环境下 php 的配置注意事项
- 简单好用的PHP分页类