php数据库抽象层 PDO

下面就来介绍一下数据库抽象层PDO的使用:

PDO(PHP Data Objects)是一个轻量级的PHP扩展,提供了一个数据访问抽象层。还要就是PDO只能在PHP5.0以上版本使用。

下面来介绍一下PDO常用的预定义常量:

PDO::ParaM_BOOL()    表示布尔数据类型

PDO::PARAM_NULL()    表示数据类型为NULL的sql

PDO::ParaM_INT()     表示为integer数据类型的SQL

PDO::PARAM_STR()     表示为char varchar 或者其他字符串的数据类型的sql

PDO::ParaM_LOB()     表示对象数据类型的SQL

PDO::FETCH_LAZY()    指定的获取方式,应当返回结果集的每一行作为一个对象的变量名,对应于它的字段名

PDO::FETCH_ORI_NEXT() 取结果集的下一行

PDO::FETCH_ORI_PRIOR()取结果集的前面的行

PDO::FETCH_ORI_FirsT()取结果集的第一行

PDO::FETCH_ORI_LAST() 取结果集的最后一行

PDO::ATTR_PERSISTENT() 创建一个持久连接,而不是新创建一个连接

代码如下:
PHP
$dbh = new PDO('MysqL:host=localhost;dbname=test',$user,$pass);
?>

下面的代码是对MysqL连接错误时的处理:
代码如下:
PHP
try {
$dbh = new PDO('MysqL:host=localhost;dbname=test',$pass);
foreach($dbh->query('SELECT * from FOO') as $row) {
print_r($row);
}
$dbh = null;
} catch (PDOException $e) {
print "Error!: " . $e->getMessage() . "
";
die();
}
?>

下面是两个重复使用插入语句的例子:
代码如下:
PHP
$stmt = $dbh->prepare("INSERT INTO REGISTRY (name,value) VALUES (:name,:value)");
$stmt->bindParam(':name',$name);
$stmt->bindParam(':value',$value); // insert one row
$name = 'one';
$value = 1;
$stmt->execute(); // insert another row with different values
$name = 'two';
$value = 2;
$stmt->execute();
?>

代码如下:
PHP
$stmt = $dbh->prepare("INSERT INTO REGISTRY (name,value) VALUES (?,?)");
$stmt->bindParam(1,$name);
$stmt->bindParam(2,$value); // insert one row
$name = 'one';
$value = 1;
$stmt->execute(); // insert another row with different values
$name = 'two';
$value = 2;
$stmt->execute();
?>

数据库进行查询操作:
代码如下:
PHP
$stmt = $dbh->prepare("SELECT * FROM REGISTRY where name = ?");
if ($stmt->execute(array($_GET['name']))) {
while ($row = $stmt->fetch()) {
print_r($row);
}
}
?>

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...