前端PHP对PDO基础操作
PDO的解释
PDO(php data object)扩展类库为php访问数据库定义了轻量级的、一致性的接口,它提供了一个数据库访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询和获取数据,大大简化了数据库的操作,并能够屏蔽不同数据库之间的差异,使用PDO可以很方便地进行跨数据库程序的开发,以及不同数据库间的移植,是将来php在数据库处理方面的主要发展方向,它可以支持mysql、postgresql、oracle、mssql等多种数据库。
创建PDO对象
使用PDO在与不同数据库管理系统之间交互时,PDO对象中的成员方法是统一各种数据库的访问接口,所以在使用PDO与数据库进行交互之前,首先要创建一个PDO对象。在通过构造方法创建对象的同时,需要建立一个与数据库服务器的连接,并选择一个数据库。
PDO的构造方法原型如下
// 连接数据库
try {
// 第一种
// $pdo = new PDO('mysql:host=localhost;dbname=php_wish2','root','root');
// 第二种
$username = 'root';
$password = 'root';
$pdo = @new PDO('mysql:host=localhost;dbname=php_wish2',$username,$password);
// 测试数据库的连接
// print_r($pdo);
} catch (PDOExcertion $e) {
// 出错时输出错误值
echo $e->getMessage();
}
建库语句
在使用PDO执行查询数据之前,先提供一组相关的数据。创建PDO对象并通过mysql驱动连接mysql数据库服务器,创建一个以’stu’命名的数据库,并在该数据库中创建一个联系人信息表classInfo.
// 创建数据表
CREATE TABLE classInfo(
id MEDIUMINT(8) UNSIGNED NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
departmentID CHAR(3) NOT NULL,
address VARCHAR(80) NOT NULL,
phone VARCHAR(20),
email VARCHAR(20),
PRIMARY KEY(uid)
);
执行SQL语句
try {
//创建对象
$dbh = new PDO("mysql:host=localhost;dbname=testdb", "root", "root");
}catch(PDOException $e) {
echo "数据库连接失败:".$e->getMessage();
}
// 更改语句
$query = "UPDATE classInfo SET phone='12345678900' WHERE name='张三'";
// 执行语句
$affected = $dbh->exec($query);
// 判断执行结果
if($affected){
//数据表classInfo中受影响的行数为:1
echo '数据表classInfo中受影响的行数为:' .$affected;
}else{
// 输出结果
print_r($dbh->errorInfo());
}
【简单总结】
从上面的使用看出,PDO功能确实强大,另外还有一些内容我没有讲到,比如绑定参数、预处理、存储过程、事务处理等等功能。另外还有不同数据扩 DSN的构造,Oracle数据库自己很多特殊的东西,都需要深入去学习理解,这篇文章就只是简单的描述了一些入门知识,算是对PDO一个简单的了解吧。