PDO数据库操作类,支持预处理和事务
时间:2008-06-15
来源:互联网
另外数据库方式也由原来的连接捆绑变成单独分离,分离出来后可以不影响其他数据库操作类的使用的情况下照样使用,
使用其他的数据库连接只需要将一个数据库连接对象换成自己的即可,但必须是PDO的.
修改方法如下:
$this->_WordObj = new $this->_WorkData[$this->_WorkType](DataBase::ConnectData());
改成
$this->_WordObj = new $this->_WorkData[$this->_WorkType](你的数据库连接对象));
就说这么多了,下面是具体的调用格式和使用方法.有写的不好的还请指点一二,有疑问请找我,非常乐意和大家作朋友
QQ:8769852
调用方法:
PHP代码:
//加载数据库类文件include_once 'DataBaseAPI.class.php';
//初始化
$db = DataBaseAPI::Init();
//传递SQL语句
$db->setSql("select * from user where user_id=?")
//传递SQL语句中?的值
$db->setValue(array(12))
//执行SQL命令后返回结果
$getvalue = $db->Perform();
PHP代码:
//标准SQL处理:查询用户ID等于12的数据$db->setSql("select * from user where user_id=?")
$db->setValue(array(12))
//简化SQL处理:查询用户ID等于12的数据
$db->setSql(array("table"=>"user")) //数据表名称
$db->setValue(array("select"=>array("user_id"=>12))) //条件
//简化SQL处理:修改用户ID等于12的用户名称为admin
$db->setSql(array("table"=>"user"))
$db->setValue(array("set"=>array("user_name"=>"admin"),"where"=>array("user_id"=>12)))
//简化SQL处理:删除用户ID等于12的所有数据
$db->setSql(array("table"=>"user"))
$db->setValue(array("del"=>array("user_id"=>12)))
//简化SQL处理:添加用户等于admin,性别等于男的一条新用户数据
$db->setSql(array("table"=>"user"))
$db->setValue(array("add"=>array("user_name"=>"admin","user_sex"=>"男")))
//预处理方式传值
//同时插入三条记录
$db->setSql("insert into user (user_name) value (?)");
$db->setValue(array("张三"));
$db->setValue(array("李四"));
$db->setValue(array("王五"));
//事务处理方式传值
$sql["Batch"][]="insert into user (user_name) value ("张三")";
$sql["Batch"][]="insert into news (news_name,news_date) value ("这是一个实例",date("Y-m-d H:i:s))";
至于什么时候要使用事务,我相信需要时就是时候
PHP代码:
/*** 返回的数据方式,共有四种形式:
* 0 -- 关联数组形式
* 1 -- 数字索引数组形式
* 2 -- 两者数组形式都有
* 3 -- 按照对象的形式
* (默认:数字索引和数组形式都有)
*/
$db->setDataMode(0);
/**
* 返回的数据类型,共有三种:
* 0 -- 最新插入到数据库的ID
* 1 -- 结果集中的列的数量
* 2 -- 语句执行后影响的行数
* 3 -- 包含了所有行的数组
* 4 -- 结果集中取出一行
* 5 -- 结果集中某一列中的数据 格式:array(5,1) 表示返回第1列的数据
* 6 -- 返回结果集中某一列的结构 格式:array(6,3) 表示返回第3列的结构
* (默认:包含了所有行的数组)
*/
$db->setDataType(3);
/**
* 数据执行的工作类型,共有三种:
* 0:单条预处理执行方式
* 1:多条预处理执行方式
* 2:多条事务处理方式 *
* 默认为:单条预处理执行方式
*/
$db->setWorkType(0);
作者: yangl2006 发布时间: 2008-06-14
作者: PHPChina 发布时间: 2008-06-14



作者: PHPChina 发布时间: 2008-06-14
作者: smilesnow 发布时间: 2008-06-16
作者: licess 发布时间: 2008-06-17
作者: zhujbing 发布时间: 2008-06-17
作者: zxe 发布时间: 2008-06-18
作者: ilsanbao 发布时间: 2008-06-27
作者: bltpchhxh 发布时间: 2008-06-27
作者: seacoastboy 发布时间: 2008-06-28
作者: janpoem 发布时间: 2008-07-02
作者: daemon 发布时间: 2008-07-02
作者: adleyliu 发布时间: 2008-07-04

作者: quanhaier 发布时间: 2008-07-07
作者: fly1983 发布时间: 2008-07-07
作者: fzm010 发布时间: 2008-07-08


作者: idgnarn 发布时间: 2008-07-08
作者: lmqhgx 发布时间: 2008-07-08
作者: wbsifan 发布时间: 2008-07-09
作者: ccy034106 发布时间: 2008-07-10
作者: yichao840 发布时间: 2008-07-15


作者: CrossMaya 发布时间: 2008-07-15
作者: qiaosou 发布时间: 2008-07-15

作者: identity 发布时间: 2008-07-17
作者: TankMe 发布时间: 2008-07-18
作者: mynamejwei 发布时间: 2008-07-26
作者: foxla 发布时间: 2008-07-27
作者: shzhe 发布时间: 2008-07-27

作者: aaabbbaaa 发布时间: 2008-07-27
作者: hf3862 发布时间: 2008-07-29


作者: cchaha 发布时间: 2008-07-30

作者: admin2008 发布时间: 2008-08-01
看看咯
作者: xieguolun 发布时间: 2008-08-01
作者: lookwzj 发布时间: 2008-08-04
作者: lookwzj 发布时间: 2008-08-04
作者: jianzhong111 发布时间: 2008-08-07
作者: yangl2006 发布时间: 2008-08-07

作者: 泡菜 发布时间: 2008-08-10
作者: wzj5 发布时间: 2008-08-10
作者: Gareth 发布时间: 2008-08-11
作者: 小星 发布时间: 2008-08-11
作者: 7136 发布时间: 2008-08-11
不顶不行
作者: dodongu 发布时间: 2008-08-14
作者: 潭影空心 发布时间: 2008-08-14
作者: sweety00 发布时间: 2008-08-15
作者: 277059367 发布时间: 2008-08-15


作者: hxly 发布时间: 2008-08-15



作者: xuzuning 发布时间: 2008-08-18
作者: mmmmzdb 发布时间: 2008-08-18
作者: kiloweb 发布时间: 2010-01-18
作者: asdf 发布时间: 2010-08-18
作者: 二 发布时间: 2010-09-25
作者: huy.zhu 发布时间: 2012-05-23
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28