PHP PDO简介

PDO (PHP Data Object) 是 PHP5 的新特性,在 PHP6 中,PDO 将是默认的数据库处理方式,所以我们有必要学习一下 PDO。

在 PHP5 以前的版本中,对于数据库的处理通常是通过一些扩展来支持的。如 windows 版本下的 php_mysql.dll、php_mssql.dll 这些扩展分别用于处理 mysql 和 MS SQL Server 等数据库。现在,POD 的出现,为我们提供了统一的数据库处理接口。

PDO 是面向对象方式处理数据库连接操作的,其预定义了以下 3 个类:

PDO:代表一个 PHP 和数据库之间的连接。

PDOStatement:代表一条预处理语句以及语句执行后的联合结果集(associated result set)。

PDOException:返回PDO触发的错误。

常用的数据库操作方法如下:

PDO::query():主要是用于有记录结果返回的操作,如 SELECT 操作。

PDO::exec():主要是针对没有结果集合返回的操作,比如 INSERT、UPDATE、DELETE 等操作,它返回的结果是当前操作影响的列数。

PDO::prepare():主要是用于预处理操作,需要通过 PDOStatement::execute() 来执行预处理里面的 SQL 语句,这个方法可以绑定参数,功能强大,相对比较复杂。

PHP PDO安装

在 PHP5 系列版本中,PDO不是默认支持的,需要手工配置才可以使用。打开 php.ini 文件,将

extension=php_pdo.dll

extension=php_pdo_mysql.dll

配置前面的 ; 符号去掉以使 PHP 支持 PDO 。上述配置只打开了对 MySQL 的 PDO 支持,如果需要对别的数据库类型进行支持,可以分别打开对应的不同配置:

extension=php_pdo_oci.dll

extension=php_pdo_oci8.dll

extension=php_pdo_odbc.dll

extension=php_pdo_pgsql.dll

extension=php_pdo_sqlite.dll

配置完成后保存配置并重启 Apache Web 服务,可以通过 phpinfo() 查看配置是否成功。

PDO 创建连接

在使用 PDO 操作数据库之前,需要创建 PDO 连接对象。

语法:

new PDO(DSN, username, password);

不同的数据库,其 DSN(Data Source Name) 构造方式是不一样的。常见数据库 DSN 语法如下:

//MySQL:

mysql:host=hostname;dbname=db_name)

//SQLite:

sqlite:db_name

//PGSQL

pgsql:host=hostname port=port_id dbname=db_name user=username password=password

php mysql pdo_PHP PDO相关推荐

  1. 同时支持三个mysql+sqlite+pdo的php数据库类_同时支持三个MySQL+SQLite+PDO的PHP数据库类...

    PHP学习教程文章简介: 同时支持三个MySQL+SQLite+PDO的PHP数据库类使用方法: // mysql connect $db = new SQL(mysql:host=localhost ...

  2. php 单例类 mysql pdo_PHP实战:PHP基于单例模式编写PDO类的方法

    <PHP实战:PHP基于单例模式编写PDO类的方法>要点: 本文介绍了PHP实战:PHP基于单例模式编写PDO类的方法,希望对您有用.如果有疑问,可以联系我们. 一.单例模式简介 简单的说 ...

  3. mysql php pdo_php PDO mysql写法

    php PDO写法连接mysql: 写法一: $db="mysql:host=localhost;dbname=sql" : //连接数据,地址localhost:数据库名称sql ...

  4. mysqli mysql pdo_PHP中MySQL、MySQLi和PDO的用法和区别

    PHP的MySQL扩展(优缺点) 设计开发允许PHP应用与MySQL数据库交互的早期扩展.mysql扩展提供了一个面向过程 的接口: 并且是针对MySQL4.1.3或更早版本设计的.因此,这个扩展虽然 ...

  5. pdo mysql like_PHP PDO准备的语句-MySQL LIKE查询

    我正在尝试通过php的PDO类(mysql驱动程序)进行搜索.我在MySQL客户端上使用以下查询(更改表名以保护无辜者): SELECT    hs.hs_pk, hs.hs_text, hs.hs_ ...

  6. mysql php pdo例_PHP的PDO操作实例

    try{ $dbms='mysql';          //数据库类型 ,对于开发者来说,使用不同的数据库,只要改这个,不用记住那么多的函数 $host='127.0.0.1';      //数据 ...

  7. php mysql 替换 pdo,php操作MySQL数据库之PDO方式

    这篇文章主要介绍了关于php操作MySQL数据库之PDO方式 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下基本使用 1)连接数据库$pdo = new PDO("mysql ...

  8. MYSQL MYSQLI PDO

    PHP的MySQL扩展(优缺点) 设计开发允许PHP应用与MySQL数据库交互的早期扩展.mysql扩展提供了一个面向过程 的接口: 并且是针对MySQL4.1.3或更早版本设计的.因此,这个扩展虽然 ...

  9. mysql php pdo 迭代器_php – 创建PDO迭代器

    这篇文章是一个骗局.它声称提供的技术可以加速PDO的数据库调用,但实际上它会大大减慢它们的速度. 它接地的前提也是错误的. PDOStatement已经可以遍历,你不需要使用foreach来迭代PDO ...

最新文章

  1. 分享:用promise封装ajax
  2. what is MEAN
  3. Failed to load JavaHL Library(windows和mac)
  4. 做好准备迎接崭新的BCH了吗?
  5. 批处理系统服务监控器[超牛B]
  6. 标题: Debian 下 VirtualBox 的桥接、USB 设置 ── 迷你怎么做 [转自sir]
  7. Nginx 虚拟主机 VirtualHost 配置
  8. Python Django 模板继承(header,body,footer抽取)
  9. 直播预告 | TCCI追问研讨会第二期:双向脑机接口如何实现?
  10. AI实战:从入门到精通系列——用感知器实现情感分类(一)
  11. mysql登录不了了_登录不了MySQL的解决方法
  12. android app复制,手机屏幕文字复制App(Text on sreen)
  13. web安全学习-验证机制存在的问题
  14. 2018年蓝桥杯B组题E题+快排
  15. 前端学习(1994)vue之电商管理系统电商系统之通过编程导航跳转到商品导航界面
  16. java -锁(公平、非公平锁、可重入锁【递归锁】、自旋锁)
  17. 【JVM】javap命令行分析(a++ + ++a)的虚拟机指令
  18. JavaScript学习(六十一)—json字符串的解析和JS 对象的序列化
  19. SQL Sever 常用语句总结
  20. 【深度学习】基于Numpy实现的神经网络进行手写数字识别

热门文章

  1. 谈一下两次CSP认证从180分到380分的感想
  2. 前端demo逻辑系列之评分插件之弹幕
  3. 【easyAR】图片识别
  4. 郭天祥_书本例程_代码.zip下载地址
  5. 英特尔称CPU超过10核没什么用,暗讽AMD胶水多核
  6. AI画图 Disco-diffusion谷歌云端使用
  7. 中国商用割草机市场趋势报告、技术动态创新及市场预测
  8. java多重继承和多继承_多继承和多重继承
  9. React学习(十)-React中编写样式CSS(styled-components)
  10. 利用html-minifier和uglify-js对前端HTML/CSS/JS文件进行压缩