用ADODB来让PHP操作ACCESS数据库的方法

这两天都在研究PHP, 主要是为了应付学习AJAX所需要的一些后台知识, 我对开源的东西总是有一种莫名的亲近感, 不要钱的东西果然人人爱啊  由于一般的空间MYSQL数据库都要单独花钱购买, 所以打算暂时先用ACCESS, 结果一查资料才头大, 原来PHP对每种不同的数据库的操作方法都不一样..... 于是搜了一些BLOG, 发现许多链接ACCESS的方法,但都不太尽如人意, 最后终于查到ADODB这个东东. 它是PHP的一个类, 内置了绝大部份你见过的数据库的操作方法. 比如PHP操作一个MYSQL一般是这样:

复制代码 代码如下:
$db = mysql_connect("localhost", "root", "password"); 
mysql_select_db("mydb",$db); 
$result = mysql_query("SELECT * FROM employees",$db); 
if ($result === false) die("failed");  
while ($fields = mysql_fetch_row($result)) { 
 for ($i=0, $max=sizeof($fields); $i < $max; $i++) { 
 print $fields[$i].' '; 
 } 
 print "<br>n"; 
}  

如果使用ADODB, 那么以下程序得到的结果同上

复制代码 代码如下:
include("adodb.inc.php"); 
 $db = NewADOConnection('mysql'); 
 $db->Connect("localhost", "root", "password", "mydb"); 
 $result = $db->Execute("SELECT * FROM employees"); 
 if ($result === false) die("failed");  
 while (!$result->EOF) { 
 for ($i=0, $max=$result->FieldCount(); $i < $max; $i++) 
 print $result->fields[$i].' '; 
 $result->MoveNext(); 
 print "<br>n"; 
 }  

然后, 如果要使用其它数据库,改变一下ADOConnection的连接名就是了, ACCESS就用

 $db = NewADOConnection('access');

完整代码如下: 

 
复制代码 代码如下:
<?php  
 include("adodb/adodb.inc.php"); 
$db = ADONewConnection('access'); 
$dsn = "Driver={Microsoft Access Driver (*.mdb)};Dbq=d:\self\myphp\book.mdb;Uid=;Pwd=;"; 
$db->Connect($dsn); 
 $result = $db->Execute("SELECT * FROM data"); 

 if ($result === false) die("failed");  
 while (!$result->EOF) { 
 for ($i=0, $max=$result->FieldCount(); $i < $max; $i++) 
 print "<div style='border:1px solid #000000;'>".$result->fields[$i]." <br />"; 
 $result->MoveNext(); 

 }  
 ?> 

ADODB可以到这里去下载 http://phplens.com/phpeverywhere/