已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PDO数据库抽象层,什么是PDO,PDO是PHPDateObject(PHP数据对象)的简称,它是与PHP5.1版本一起发行的,目前支持的数据库包括Firebird、FreeTDS、Interbase、MySQL、MSSQLServer、ODBC、Oracle、PostgreSQL、SQLite和Sybase。有了PDO,您不必再使用mysql_*函数、oci_*函数或者mssql_*函数,也不必再为它们封装数据库操作类,只需要使用PDO接口中的方法就可以对数据库进行操作。在选择不同的数据库时,只需修改PDO的DSN(数据源名称)。本节不但解释了什么是PDO,而且介绍了PDO的特点和安装方法。,PDO连接数据库,PDO连接不同的数据库,主要应用的是PDO构造函数,传递不同的数据源、类型、数据库名称、密码等等,进而实现与不同数据库的统一连接,统一操作。构造函数的语法如下:_construct(string$dsn,string$username,string$password,array$driver_options)构造函数的参数说明如下:dsn:数据源名,包括主机名端口号和数据库名称。username:连接数据库的用户名。password:连接数据库的密码。driver_options:连接数据库的其他选项。,PDO中执行SQL语句,在PDO中执行SQL语句有三种方法,下面将对这三种方法进行详细讲解:(1)exec()方法:返回执行后受影响的行数。语法:intPDO:exec(stringstatement)说明:参数statement是要执行的SQL语句。该方法返回执行查询时受影响的行数,通常用于INSERT、DELETE和UPDATE语句中。(2)query()方法:通过用于返回执行查询后的结果集语法:PDOStatementPDO:query(stringstatement)说明:参数statement是要执行的SQL语句。它返回的是一个PDOStatement对象。(3)预处理语句prepare()和execute()首先,通过prepare()方法做查询的准备工作,然后,通过execute()方法执行查询。并且还可以通过bindParam()方法来绑定参数提供给execute()方法。其语法如下:PDOStatementPDO:prepare(stringstatement,arraydriver_options)boolPDOStatement:execute(arrayinput_parameters),PDO中获取结果集,PDO中获取结果集的方法同样有3三种,下面将对这3种方法进行系统讲解:(1)fetch()方法获取结果集中的下一行语法:mixedPDOStatement:fetch(intfetch_style,intcursor_orientation,intcursor_offset)说明:参数fetch_style:控制结果集的返回方式PDO:FETCH_ASSOC关联数组形式PDO:FETCH_NUM数字索引数组形式PDO:FETCH_BOTH两者数组形式都有,这是缺省的PDO:FETCH_OBJ按照对象的形式,类似于以前的mysql_fetch_object()PDO:FETCH_BOUND以布尔值的形式返回结果,同时将获取的列值赋给bindParam()方法中指定的变量PDO:FETCH_LAZY以关联数组、数字索引数组和对象3种形式返回结果参数cursor_orientation:PDOStatement对象的一个滚动游标,可用于获取指定的一行参数cursor_offset:游标的偏移量。,PDO中获取结果集,(2)fetchAll()方法获取结果集中的所有行语法:arrayPDOStatement:fetchAll(intfetch_style,intcolumn_index)参数fetch_style:控制结果集中数据的显示方式。参数column_index:字段的索引。其返回值是一个包含结果集中所有数据的二维数组(3)fetchColumn()方法获取结果集中下一行指定列的值语法:stringPDOStatement:fetchColumn(intcolumn_number)说明:可选参数column_number设置行中列的索引值,该值从0开始。如果省略该参数则将从第1列开始取值。,PDO中捕获SQL语句中的错误,在PDO中捕获SQL语句中的错误有3种方案可以选择:(1)使用默认模式PDO:ERRMODE_SILENT在默认模式中设置PDOStatement对象的errorCode属性,但不进行其他任何操作(2)使用警告模式PDO:ERRMODE_WARNING警告模式会产生一个PHP警告,并设置errorCode属性。如果设置的是警告模式,那么除非明确地检查错误代码,否则程序将继续按照其方式运行。(3)使用异常模式PDO:ERRMODE_EXCEPTION异常模式会创建一个PDOException,并设置errorCode属性。它可以将执行代码封装到一个trycatch语句块中。未捕获的异常将会导致脚本中断,并显示堆栈跟踪让您了解是哪里出现的问题。,PDO中错误处理,PDO中有2种获取程序中错误信息的方法:(1)errorCode()方法errorCode()方法用于获取在操作数据库句柄时所发生的错误代码,这些错误代码被称为SQLSTATE代码。其语法格式如下:intPDOStatement:errorCode(void)errorCode()方法返回一个SQLSTATE,SQLSTATE是由5个数字和字母组成的代码。(2)errorInfo()方法errorInfo()方法用于获取操作数据库句柄时所发生的错误信息。语法:arrayPDOStatement:errorInfo(void)errorInfo()方法的返回值为一个数组,它包含了相关的错误信息。,PDO中事务处理,在PDO中实现事务处理的功能,其应用的方法如下:(1)开启事务beginTransaction()方法beginTransaction()方法将关闭自动提交(autocommit)模式,直到事务提交或者回滚以后才恢复。(2)提交事务commit()方法commit()方法完成事务的提交操作,成功则返回TRUE,否则返回FALSE。(3)事务回滚rollback()方法rollback()方法执行事务的回滚操作。,PDO中存储过程,存储过程允许在更接近于数据的位置操作数据,从而减少带宽的使用,它们使数据独立于脚本逻辑,允许使用不同语言的多个系统以相
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025陕西西安市延长石油(集团)有限责任公司高校毕业生招聘笔试历年参考题库附带答案详解
- 慈善捐赠的法律风险及防范策略
- 商标代理师企业知识产权战略规划
- 安全工程师消防消防设计与施工安全管理
- 2025河南洛阳国宏资本创业投资有限公司社会招聘7人笔试历年参考题库附带答案详解
- 2025江西吉安市吉州区两山资产运营有限公司及下属子公司面向社会招聘工作人员拟入闱投档分数线及笔试历年参考题库附带答案详解
- 怀化医疗行业中的职业发展路径分析
- 安踏AI时代求职者必-备技能库
- 2025四川科瑞软件有限责任公司招聘投标专员等岗位测试笔试历年参考题库附带答案详解
- 教师岗位的自我提升策略及面试实战技巧
- 2023年武汉科技大学353卫生综合考研真题(A卷)含答案解析
- 保密从小事做起培训课件
- 肺动脉栓塞的急救处理流程
- 一份完整的鲜花店创业计划书
- 2025年中国建筑项目关键岗位专题培训试题及答案
- 安徽省华师联盟2025~2026学年秋季学期高一期中质量检测含答案(9科试卷)
- 雨课堂学堂云在线《政府预算(中央财大 )》单元测试考核答案
- 2025年ARM市场调查报告
- 2025年甘肃省省直及部分省辖市事业单位招聘考试真题试卷 公共基础知识含答案详解(考试直接用)
- 2025年山东省济南市高考生物二模试卷
- 医学常用统计方法
评论
0/150
提交评论