47 PDO的使用电子课件_第1页
47 PDO的使用电子课件_第2页
47 PDO的使用电子课件_第3页
47 PDO的使用电子课件_第4页
47 PDO的使用电子课件_第5页
已阅读5页,还剩12页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目3使用PHP框架Laravel来改写会员管理系统任务2PDO的使用成都职业技术学院软件学院主讲教师:牟奇春PDO的使用我们在前面的程序中,是使用的mysqli_connect()函数来连接MySQL数据库,并调用相关函数完成各项操作。但在实际开发工作中,可能会用到各种不同的数据库,此时,也需要使用相应的连接函数来连接不同的数据库,给程序开发带来不便。而我们这里讲到的PDO就是一个数据库访问抽象层,作用是统一各种数据库的访问接口,以后更换数据库类型,再也不用去一个一个的修改函数了。PDO的使用下面,我们简单讲解一下PDO如何使用。为了使用PDO,首先必须在服务器环境配置中,打开PDO扩展。以我们前面完成的会员管理系统为例,我们回到小皮面板中,打开“网站”标签,然后找到member,点击后面的“管理”,再点击“PHP扩展”,确保选中了PDO_MYSQL。PDO的使用PDO的使用:使用PDO连接数据库新建一个示例文件,输入如下内容:可以运行测试一下,看是否能正常连接到MySQL数据库。第8行和第12行中用到了PHP中的Try-catch语句,其作用是用于处理异常。如果try子句中的代码正常执行,则catch子句不会被执行到。一旦try子句中某一行代码出现异常(比如,数据用户名出错,则无法正常连接到数据库,系统就会抛出一个异常),catch子句就会自动执行,在其中会输出相应的错误提示信息。PDO的使用:使用PDO连接数据库PDO的使用:使用PDO查询数据表记录我们修改一下刚才的代码如下:运行程序,可以看到,我们用两种方式,分别输出了userinfo表中的2条记录。这里主要是使用了PDO中的query方法。PDO的使用:使用PDO查询数据表记录PDO实例的query()方法就是执行一条查询语句,并返回一个PDOStatement对象。通过遍历这个对象,就可以获得查询出来的数据结果集。我们可以看到,返回的结果集中,既包含了关联数组,又包含了索引数组,而我们平常开发一般只需要关联数据,我们可以简单设置一下,在使用query()时,添加一个参数即可(这个参数是一个PDO预定义的常量,表示只获取关联数组。):PDO的使用:使用PDO实现数据的增、删、改刚才我们已经看到了,使用query()方法可以查询数据库。如果要对数据库进行增、删、入操作,则需要使用exec()方法。在刚才的示例文件中添加如下代码:PDO的使用:使用PDO实现数据的增、删、改运行程序,可以看到,我们正常添加了一条记录,并得到了其ID。下面再看一下更新数据库记录的操作。如果有数据更新,则返回的“受影响的记录数”为真实变动的记录数,如果无实质更新,比如,此用户名本来就是wang,现在重新更新成wang,则返回的“受影响的记录数”为0。PDO的使用:使用PDO实现数据的增、删、改下面再看一下删除数据库记录的操作。如果有记录被删除,则返回删除的记录行数。如果没有记录被删除,则返回0。需要注意,PDO::exec()不会从一条SELECT语句中返回结果。对于在程序中需要执行SELECT的查询语句,应该使用PDO::query()。PDO的使用:PDOStatement

预处理的使用预处理语句就是准备好一个要执行的语句,然后返回一个PDOStatement对象。一般我们会使用PDOStatement对象的execute()方法来执行这条语句。为什么叫预处理呢?因为它可以让我们多次调用这条语句,并且可以通过占位符来替换语句中的字段条件。相比直接使用PDO对象的query()或者exec()来说,预处理的效率更高。更加重要的一点是,占位符的应用可以有效的防止基本的SQL注入攻击,我们不需要手动地给SQL语句添加引号,直接让预处理来解决这个问题即可。PDO的使用:PDOStatement

预处理的使用使用预处理语句,需要使用到prepare方法。同时,有一个关键因素是,在参数中使用占位符。请记住,在所有语句中,都只能对数据列的值使用占位符。比如,在查询语句中,在where子句里对要筛选的列的值用占位符来替代。或者是在insert语句中,对插入列的值使用占位符来替代。请看下面的例子,对查询的id值,使用占位符?来替代,然后使用prepare方法进行SQL语句预处理,最后调用execute方法,使用数组作为参数,即可完成查询。execute的参数是一个array数组,其元素个数请保持和占位符的数量一致,顺序也一致。PDO的使用:PDOStatement

预处理的使用在下面的代码中,我们构建了一个SQL查询语句,其中where子句中的id,其值是?,表示是一个占位符。然后在第4行中调用prepare()方法进行预处理,然后在第5行中调用execute()方法,并传递一个数组参数,其中的值20就是对应where子句中的id。到现在为止,我们简单的了解了PHP面向对象的编程方式和PHP中PDO的使用。之所以要先讲解这些内容,是因为我们接下来要学习的PHP框架Laravel,就用到了这些相关的内容。PDO的使用:PDOStatement

预处理的使用总结PHP数据对象(PDO)扩展为PHP访问数据库定义了一个轻量级的一致接口。其优势有:PDO从底层实现统一接口数据库操作,不管用哪种数据库,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论