PDO数据库抽象层
PDO的优势在于兼容性,但速度不如mysql和mysqli
new PDO($dsn,$username,$passwd[,$options])
$options可以设置数据库连接属性,如:
$options=array(PDO::ATTR_AUTOCOMMIT=>0,PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION);

beginTransaction()启动一个事务(要先关闭自动提交事务) commit()提交一个事务 rollBack()回滚一个事务 inTransaction()检查事务是否激活
exec()不能进行select操作;若sql语句错误,exec()返回false
errorInfo()返回值是数组,包含:0->SQLSTATE,1->错误码,2->错误信息
query()若sql语句错误,返回false
prepare()准备一条语句,execute()执行这条语句
quote()会返回带引号的字符串,并通过反斜线转义来过滤字符串中的特殊字符
setAttribute()和getAttribute()的一些常用参数:(成功调用则返回请求的 PDO 属性值。不成功则返回 null )
-
下列为应用到数据库连接中的常量:
- PDO::ATTR_AUTOCOMMIT 是否自动提交
- PDO::ATTR_CASE 字段名称是否大小写
- PDO::ATTR_CLIENT_VERSION 客户端版本
- PDO::ATTR_CONNECTION_STATUS 连接状态
- PDO::ATTR_DRIVER_NAME
- PDO::ATTR_ERRMODE 默认的错误处理模式,静默模式,出错屏幕不会显示,可以通过errorCode()和errorInfo()获取错误信息
- PDO::ERRMODE_WARRING 警告模式,出错会在屏幕提示
- PDO::ERRMODE_EXCEPTION 异常模式,建议使用,出错时在屏幕显示错误信息
- PDO::ATTR_ORACLE_NULLS 返回空字符串,转换为sql的null
- PDO::ATTR_PERSISTENT 数据库是否持久连接
- PDO::ATTR_PREFETCH
- PDO::ATTR_SERVER_INFO 服务器信息
- PDO::ATTR_SERVER_VERSION 服务器版本
- PDO::ATTR_TIMEOUT 超时时间设置

setFetchMode()的几种模式:setFetchMode(PDO::FETCH_ASSOC) setFetchMode(PDO::FETCH_BOTH) setFetchMode(PDO::FETCH_OBJ)
也可以直接设置fetch() / fetch_All()的几种模式:fetch(PDO::FETCH_ASSOC) fetch(PDO::FETCH_BOTH) fetch(PDO::FETCH_OBJ)
rowCount()也可以返回select语句得到的结果集的行数
bindParam()请参考php手册

PDO数据库抽象层的更多相关文章
- 初识PDO数据库抽象层
目录: 00x1 php中的pdo是什么? 00x2 pdo创建一个PDO对象 00x1 php中的pdo是什么? 就是操作数据库的方法,pdo就是把操作数据库的函数封装成一个pdo类,其间做了安全验 ...
- 跟着百度学PHP[14]-初识PDO数据库抽象层
目录: 00x1 php中的pdo是什么? 00x2 pdo创建一个PDO对象 00x1 php中的pdo是什么? 就是操作数据库的方法,pdo就是把操作数据库的函数封装成一个pdo类,其间做了安全验 ...
- 自己写好的pdo数据库抽象层 mysql为例
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/qq1355541448/article/details/31787719 class pdo_dat ...
- 12.PHP_PDO数据库抽象层
PDO数据库抽象层 其实也就是说,为了方便PHP项目各种数据库切换的方便以及代码兼容性,再各种数据库上又封装了一层,做成了统一的接口,方便数据库使用和切换. PDO链接mysql数据库: <?p ...
- PHP数据库抽象层--PDO(PHP Data Object) [一]
1.简介:(PDO数据库访问抽象层,统一各种 数据库的访问接口 ) PHP 数据对象 (PDO) 扩展为PHP访问数据库定义了一个轻量级的一致接口.实现 PDO 接口的每个数据库驱动可以公开具体数据库 ...
- 数据库抽象层PDO
通过数据库抽象层PDO可以访问多个数据库 //数据库抽象层PDO //造DSN:驱动名:dbname=数据库名:host=服务器地址 $dsn = "mysql:dbname=mydb;ho ...
- 《细说PHP》第四版 样章 第18章 数据库抽象层PDO 2
18.2 PDO所支持的数据库 使用PHP可以处理各种数据库系统,包括MySQL.PostgreSQL.Oracle.MsSQL等.但访问不同的数据库系统时,其所使用的PHP扩展函数也是不同的.例如 ...
- PHP 数据库抽象层pdo
PDO是PHP数据对象(PHP Data Object)的缩写. pdo就是一个"数据库访问抽象层",作用是统一各种数据库的访问接口,能够轻松地在不同数据库之间进行切换,使得数据库 ...
- 《细说PHP》第四版 样章 第18章 数据库抽象层PDO 5
18.5 使用PDO对象 PDO扩展类库为PHP访问数据库定义了一个轻量级.一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询和获取数据,大大简化了数据 ...
随机推荐
- Unity学习疑问记录之隐藏与显示物体
Unity3D中隐藏与显示物体的一些操作 http://unity3d.9tech.cn/news/2013/0930/33019.html
- Session 知识点再整理(二) 自定义 Session 存储机制
对于访问量大的网站,用默认的 Session 存储方式(以文件存储)不适合,因为文件的 I/O 开销会非常大,另外 Session 机制本身使 Session 不能跨机访问,在 Web 集群中无法达到 ...
- 优秀API设计的十大原则
优秀API设计的十大原则 2015-09-23 分类:编程开发.设计模式.首页精华暂无人评论 分享到:更多4 二十万年薪PHP工程师培养计划 成为被疯抢的Android牛人 风中叶讲Java重难 ...
- 【翻译】How To Tango With Django 1.5.4 第四章
4.模板和静态媒体 这章讲解模板引擎 4.1使用模板 前面我们讲解了view和url 映射,创建出了django 的web页面,现在就要将模板混合进去 好的网站在布局上总是有许多重复的.django提 ...
- C/C++相对论——C++中为什么要使用异常(跳转语句会造成对象没有被析构)
C++中为什么要使用异常? 很多人也许知道C++中的异常机制,很多人也许不知道.很多人知道C中常用的assert,也知道在编译时候指定NODEBUG来忽略它. 对于C语言,使用正常的if-else即是 ...
- 在Altium_Designer_PCB_中插入图片的方法
详细请看PDF: http://files.cnblogs.com/files/BinB-W/在Altium_Designer_PCB_中插入图片的方法.pdf 配套文件: http://files. ...
- Linux系统下Redis安装(一)
最近项目要使用Redis,特将这段时间将Redis的学习经验与大家分享,算是对这段时间学习成果的总结和技术提炼,不足之处还望大家批评指正. 项目背景: 有些很少改动的数据和经常使用的数据(例如系统中下 ...
- WEB压力测试工具Pylot试用
Pylot介绍 转载自[http://www.freehao123.com/pylot-web/] 为了能够准确地评估网站服务器对网络流量的承受能力,我们一般会采取模拟网站用户访问,通过不断地增加并发 ...
- 使用ocr的自动备份还原ocr
1.查看ocr自动备份ocrconfig -showbackup 2.停止所有节点的集群件 3.还原ocr文件ocrconfig -restore <file-name> 4.重启crs, ...
- document.body.clientHeight和 document.documentElement.clientHeight 的区别
1.javascript中的 document.body.clientHeight 和 document.documentElement.clientHeight 的区别 在往同事负责的页面添加我的功 ...