这篇文章主要介绍了php使用pdo连接access数据库并循环显示数据操作,结合实例形式较为详细的分析了php使用pdo进行access数据库连接、查询、执行sql语句、预处理等相关操作技巧与注意事项,需要的朋友可以参考下
本文实例讲述了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 adodb生成html表格函数rs2html功能【附错误处理函数用法】
php使用正则表达式实现过滤非法字符串功能示例
以上就是php使用pdo连接access数据库并循环显示数据操作的详细内容。