本文实例讲述了php操作access数据库的方法。分享给大家供大家参考,具体如下:
在PHP网站开发中,PHP与Mysql是最好的组合,但是当你想将其他平台的网站移植到PHP平台时,必然遇到移植性的问题,如ASP+ACCESS平台如何移植?首当其冲便是PHP连接Access数据库问题,在不改变数据库的情况下,PHP如何与Access数据库建立连接?
PHP提供多种连接数据库解决方案,在此详解如何使用PHP ADOdb、PDO、ODBC与Access数据库建立连接的代码实例,作为抛砖引玉。
准备工作
使用OFFICE工具建立Access数据库文件
一、使用PHP ADOdb连接Access数据库
1、首先你需要安装PHP ADOdb类库。
2、使用PHP ADOdb连接Access数据库代码如下
<?php include('adodb5/adodb.inc.php'); $db =& ADONewConnection('access'); $dsn = "Driver={Microsoft Access Driver (*.mdb)};Dbq=".realpath("access.mdb").";Uid=;Pwd=;"; $db->Connect($dsn); $rs = $db->Execute('select * from web'); print "<pre>"; print_r($rs->GetRows()); print "</pre>"; ?>
说明:与使用PHP ADOdb与Mysql数据库建立连接类似,首先把ADOdb类库包含进来,然后调用ADONewConnection、Connect、Execute与Access数据库建立连接并执行查询操作。
二、使用PHP PDO连接Access数据库
PDO功能需PHP5以上支持,在使用PDO之前你必须确保安装了PDO功能,如何配置安装PDO呢?
只要在PHP.INI配置文件中找到extension_dir,使之指向扩展库目录地址,同时去除你想要使用的PDO驱动DLL之前的分号(;),重启Apache,PDO就算安装好了。这里由于我们使用PDO连接Access数据库,所以至少确保php_pdo.dll,php_pdo_odbc.dll能支持。
使用PDO连接Access数据库代码实例
<?php $db = new PDO("odbc:driver={microsoft access driver (*.mdb)};dbq=".realpath("access.mdb")) or die("Connect Error"); $rs = $db->query('select * from web'); print "<pre>"; print_r($rs->fetchAll()); print "</pre>"; ?>
说明:首先初始化PDO对象,建立PHP与Access数据库之间的连接,然后通过PDO query函数执行查询操作。
三、使用ODBC连接Access数据库
使用ODBC连接Access数据库代码实例
<?php $dsn = "DRIVER=Microsoft Access Driver (*.mdb);dbq=".realpath("access.mdb"); $conn = @odbc_connect($dsn,"","",SQL_CUR_USE_ODBC ) or die ("Connect Error!"); $sql = "select * from web"; $rs = @odbc_do($conn,$sql); while(odbc_fetch_row($rs)){ echo "网站名称:".odbc_result($rs,"webname"); echo "<br/>网站地址:".odbc_result($rs,"website"); } odbc_close($conn); ?>
说明:首先使用odbc_connect连接access数据库,前三个参数分别为:$DSN,数据库用户名,密码,第四个参数设置为SQL_CUR_USE_ODBC主要是为了避免连接Access数据库发生意外错误;然后使用odbc_do执行查询操作,并调用odbc_fetch_row、odbc_result输出查询内容,最后使用odbc_close关闭Access数据库连接。
至此使用PHP ADOdb、PDO、ODBC连接Access数据库并进行操作的代码实例就介绍完了,通过上述实例,我们可以看到其实PHP连接Access数据库的方法大同小异,使用哪种方法取决于PHP环境的配置情况。
希望本文所述对大家PHP程序设计有所帮助。
php操作access数据库的方法详解
- Author -
kefan_1987声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@