用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/