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


Posted in PHP onJune 05, 2018

本文实例讲述了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 相关文章推荐
批量修改RAR文件注释的php代码
Nov 20 PHP
ThinkPHP中自定义目录结构的设置方法
Aug 15 PHP
php生成短域名函数
Mar 23 PHP
DEDECMS首页调用图片集里的多张图片
Jun 05 PHP
PHP常用工具类大全附全部代码下载
Dec 07 PHP
PHP读取大文件的多种方法介绍
Apr 04 PHP
PHP中PDO连接数据库中各种DNS设置方法小结
May 13 PHP
Yii框架批量插入数据扩展类的简单实现方法
May 23 PHP
PHP十六进制颜色随机生成器功能示例
Jul 24 PHP
PHP实现验证码校验功能
Nov 16 PHP
laravel框架中表单请求类型和CSRF防护实例分析
Nov 23 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
Feb 18 PHP
thinkPHP5框架设置404、403等http状态页面的方法
Jun 05 #PHP
PHP函数按引用传递参数及函数可选参数用法示例
Jun 04 #PHP
PHP实现的超长文本分页显示功能示例
Jun 04 #PHP
PHP使用正则表达式实现过滤非法字符串功能示例
Jun 04 #PHP
PHP+Ajax实现上传文件进度条动态显示进度功能
Jun 04 #PHP
Laravel利用gulp如何构建前端资源详解
Jun 03 #PHP
PHP学习记录之数组函数
Jun 01 #PHP
You might like
Laravel模板引擎Blade中section的一些标签的区别介绍
2015/02/10 PHP
PHP函数按引用传递参数及函数可选参数用法示例
2018/06/04 PHP
Javascript处理DOM元素事件实现代码
2012/05/23 Javascript
js 获取后台的字段 改变 checkbox的被选中的状态 代码
2013/06/05 Javascript
可兼容IE的获取及设置cookie的jquery.cookie函数方法
2013/09/02 Javascript
jQuery中trigger()方法用法实例
2015/01/19 Javascript
node.js操作mongodb学习小结
2015/04/25 Javascript
jQuery实现表格展开与折叠的方法
2015/05/04 Javascript
jquery中done和then的区别(详解)
2017/12/19 jQuery
vue cli webpack中使用sass的方法
2018/02/24 Javascript
Nodejs使用Mongodb存储与提供后端CRD服务详解
2018/09/04 NodeJs
详解Vue用cmd创建项目
2019/02/12 Javascript
JS html事件冒泡和事件捕获操作示例
2019/05/01 Javascript
Vue数据绑定简析小结
2019/05/07 Javascript
Android 自定义view仿微信相机单击拍照长按录视频按钮
2019/07/19 Javascript
Vue移动端用淘宝弹性布局lib-flexible插件做适配的方法
2020/05/26 Javascript
如何在vue 中引入使用jquery
2020/11/10 jQuery
基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件功能
2021/02/23 Vue.js
[01:02:25]2014 DOTA2华西杯精英邀请赛 5 24 iG VS DK
2014/05/26 DOTA
python基于queue和threading实现多线程下载实例
2014/10/08 Python
Python GUI布局尺寸适配方法
2018/10/11 Python
pandas重新生成索引的方法
2018/11/06 Python
PyQt5 QTable插入图片并动态更新的实例
2019/06/18 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
2019/07/22 Python
详解Python是如何实现issubclass的
2019/07/24 Python
pytorch中torch.max和Tensor.view函数用法详解
2020/01/03 Python
python邮件中附加文字、html、图片、附件实现方法
2021/01/04 Python
日语专业毕业生自荐书
2014/06/18 职场文书
部队反四风对照检查材料
2014/09/26 职场文书
住房抵押登记委托书
2014/09/27 职场文书
老公给老婆的检讨书(精华篇)
2014/10/18 职场文书
傅雷家书读书笔记
2015/06/29 职场文书
一百条裙子读书笔记
2015/07/01 职场文书
宾馆安全管理制度
2015/08/06 职场文书
Java Shutdown Hook场景使用及源码分析
2021/06/15 Java/Android
php实现自动生成验证码的实例讲解
2021/11/17 PHP