数据库接口层——PDO

本文介绍PHP Data Object (PDO)如何简化跨数据库的应用开发。PDO提供了一致的接口,支持多种数据库,通过示例展示了创建PDO对象连接数据库的过程及常用方法,如query(), exec(), prepare()等,还介绍了PDOStatement对象的fetch(), fetchAll()等方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在应用不同的数据库时,需要学习特定的数据库,这通常来说是比较麻烦的。如果将 PHP 程序移植到其他数据库上,就需要修改大量的程序代码,使移植难以实现。

为了解决这个问题,需要数据库访问接口,通过接口实现各种数据库的访问。

PDO(PHP Data Object)是为 PHP 访问数据库定义的一种轻量级的、一致性的数据库接口,它提供了一个数据库访问抽象层,作用是统一各种数据库访问接口,使得程序能够轻松地在不同的数据库之间进行切换,数据库间的移植变得容易实现。这样,无论使用什么样的数据库,都可以通过一致的函数执行查询和获取数据。

1. 创建PDO对象连接数据库

$dsn="mysql:host=localhost;dbname=guestbook";
$db=new PDO($dsn,'root','123');     //连接数据库       
                                   // $db=new PDO($dsn,'root','123',array(PDO::ATTR_PERSISTENT=>true)); 如果是长连接,需要第四个参数
$db->query('set names utf-8');   

2. PDO类中常用的成员方法

方法名描述
query()执行一条有结果集返回的SQL语句,并返回一个结果集PDOStatement对象
exec()执行一条SQL语句,并返回所影响的记录数
lastInsertId()获取最近一条插入表中记录的自增ID值
prepare()负责准备要执行的SQL语句,用于执行存储过程等

3. PDOStatement对象中常用的成员方法

调用PDO对象的方法可以使用“对象名->方法名”的形式。使用PDO对象的query()方法执行select语句后会得到一个结果集对象PDOStatement,该对象的常用方法如下:

方法名描述
fetch()以数组或对象的形式返回当前指针指向的记录,并将结果集指针移至下一行,当到达结果集末尾时返回false
fetchAll()返回结果集中所有的行,并赋给返回的二维数组,指针将指向结果集末尾
fetchColumn()返回结果集中下一行某个列的值
setFetchMode()设置 fetch() 或 fetchAll() 方法返回结果的模式,如关联数组、索引数组、混合数组、对象等
rowCount()返回结果集中的记录总数,仅对query() 和 prepare() 方法有效 
columnCount()在结果集中返回列的总数
bindColumn()将一个列和一个指定的变量名绑定(必须设置fetch方法为FETCH_BOTH)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值