PHP使用pdo连接access数据库并循环显示数据操作示例

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP使用pdo连接access数据库并循环显示数据操作。分享给大家供大家参考,具体如下:

PDO连接与查询:

try {
$conn = new PDO("odbc:driver={microsoft access driver (*.mdb)};
       dbq=".realpath("MyDatabase.mdb"))
       or die("链接错误!");
//echo "链接成功!";
}
catch(PDOException $e){
  echo $e->getMessage();
}
$sql = "select * from users";

1. foreach()方法

foreach ($conn->query($sql) as $row) {
$row["UserID"];
$row["UserName"];
$row["UserPassword"];
}

2. while()方法

$rs = $conn->query($sql);
$rs->setFetchMode(PDO::FETCH_NUM);
while($row=$rs->fetch()){
$row[0];
$row[1];
$row[2];
}

php使用PDO抽象层获取查询结果,主要有三种方式:

(1)PDO::query()查询。

看下面这段php代码:

<?php
//PDO::query()查询
$res = $db->query('select * from user');
$res->setFetchMode(PDO::FETCH_NUM); //数字索引方式
while ($row = $res->fetch()){
print_r($row);
}
?>

(2)PDO->exec()处理sql

<?php
//PDO->exec()处理sql
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$res = $db->exec("insert into user(id,name) values('','php点点通')");
echo $res;
?>

(3)PDO::prepare()预处理执行查询

<?php
//PDO::prepare()预处理执行查询
$res = $db->prepare("select * from user");
$res->execute();
while ($row = $res->fetchAll()) {
print_r($row);
}
?>

setAttribute() 方法是设置属性,常用参数如下:

PDO::CASE_LOWER -- 强制列名是小写
PDO::CASE_NATURAL -- 列名按照原始的方式
PDO::CASE_UPPER -- 强制列名为大写

setFetchMode方法来设置获取结果集的返回值的类型,常用参数如下:

PDO::FETCH_ASSOC -- 关联数组形式
PDO::FETCH_NUM -- 数字索引数组形式
PDO::FETCH_BOTH -- 两者数组形式都有,这是默认的
PDO::FETCH_OBJ -- 按照对象的形式,类似于以前的 mysql_fetch_object()

对上面总结如下:

查询操作主要是PDO::query()PDO::exec()PDO::prepare()

PDO->query() — 处理一条SQL语句,并返回一个“PDOStatement”
PDO->exec() — 处理一条SQL语句,并返回所影响的条目数
PDO::prepare()主要是预处理操作,需要通过$rs->execute()来执行预处理里面的SQL语句

最后介绍两个常用的函数:

(1)fetchColumn()获取指定记录里一个字段结果,默认是第一个字段!

<?php
$res = $db->query('select * from user');
//获取指定记录里第二个字段结果
$col = $res->fetchColumn(1);
echo $col;
?>

(2)fetchAll(),从一个结果集中获取数据,然后存放在关联数组中

<?php
$res = $db->query('select * from user');
$res_arr =$res->fetchAll();
print_r($res_arr);
?>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP基于pdo操作数据库技巧总结》、《php+Oracle数据库程序设计技巧总结》、《PHP+MongoDB数据库操作技巧大全》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

简单谈谈PHP中的trait

前言 之前的一个同事换工作,在面试被问到了 PHP 的 trait 。因为没用过, 所以没答好,我大概是用过几次的,想了想整理了以下的总结。 trait trait 是在一些类(Cla...

PHP利用APC模块实现文件上传进度条的方法

本文实例讲述了PHP利用APC模块实现文件上传进度条的方法。分享给大家供大家参考。具体分析如下: 以前的php5.2之前的版本是不能可使用APC模块的,因为之前的压根就没有这个APC模块...

有关PHP性能优化的介绍

PHP优化对于PHP的优化主要是对php.ini中的相关主要参数进行合理调整和设置,以下我们就来看看php.ini中的一些对性能影响较大的参数应该如何设置。 # vi /etc/php....

PHP7新特性之抽象语法树(AST)带来的变化详解

本文分析了PHP7新特性之抽象语法树(AST)带来的变化。分享给大家供大家参考,具体如下: 这里大部分内容参照 AST 的 RFC 文档而成:https://wiki.php.net/r...

RSA实现JS前端加密与PHP后端解密功能示例

RSA实现JS前端加密与PHP后端解密功能示例

本文实例讲述了RSA实现JS前端加密与PHP后端解密功能。分享给大家供大家参考,具体如下: web前端,用户注册与登录,不能直接以明文形式提交用户密码,容易被截获,这时就引入RSA。 前...