本文實(shí)例講述了php操作access數(shù)據(jù)庫(kù)的方法。分享給大家供大家參考,具體如下:
在PHP網(wǎng)站開(kāi)發(fā)中,PHP與Mysql是最好的組合,但是當(dāng)你想將其他平臺(tái)的網(wǎng)站移植到PHP平臺(tái)時(shí),必然遇到移植性的問(wèn)題,如ASP+ACCESS平臺(tái)如何移植?首當(dāng)其沖便是PHP連接Access數(shù)據(jù)庫(kù)問(wèn)題,在不改變數(shù)據(jù)庫(kù)的情況下,PHP如何與Access數(shù)據(jù)庫(kù)建立連接?
PHP提供多種連接數(shù)據(jù)庫(kù)解決方案,在此詳解如何使用PHP ADOdb、PDO、ODBC與Access數(shù)據(jù)庫(kù)建立連接的代碼實(shí)例,作為拋磚引玉。
準(zhǔn)備工作
使用OFFICE工具建立Access數(shù)據(jù)庫(kù)文件
一、使用PHP ADOdb連接Access數(shù)據(jù)庫(kù)
1、首先你需要安裝PHP ADOdb類庫(kù)。
2、使用PHP ADOdb連接Access數(shù)據(jù)庫(kù)代碼如下
1
2
3
4
5
6
7
8
9
10
|
<?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>" ; ?> |
說(shuō)明:與使用PHP ADOdb與Mysql數(shù)據(jù)庫(kù)建立連接類似,首先把ADOdb類庫(kù)包含進(jìn)來(lái),然后調(diào)用ADONewConnection、Connect、Execute與Access數(shù)據(jù)庫(kù)建立連接并執(zhí)行查詢操作。
二、使用PHP PDO連接Access數(shù)據(jù)庫(kù)
PDO功能需PHP5以上支持,在使用PDO之前你必須確保安裝了PDO功能,如何配置安裝PDO呢?
只要在PHP.INI配置文件中找到extension_dir,使之指向擴(kuò)展庫(kù)目錄地址,同時(shí)去除你想要使用的PDO驅(qū)動(dòng)DLL之前的分號(hào)(;),重啟Apache,PDO就算安裝好了。這里由于我們使用PDO連接Access數(shù)據(jù)庫(kù),所以至少確保php_pdo.dll,php_pdo_odbc.dll能支持。
使用PDO連接Access數(shù)據(jù)庫(kù)代碼實(shí)例
1
2
3
4
5
6
7
|
<?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>" ; ?> |
說(shuō)明:首先初始化PDO對(duì)象,建立PHP與Access數(shù)據(jù)庫(kù)之間的連接,然后通過(guò)PDO query函數(shù)執(zhí)行查詢操作。
三、使用ODBC連接Access數(shù)據(jù)庫(kù)
使用ODBC連接Access數(shù)據(jù)庫(kù)代碼實(shí)例
1
2
3
4
5
6
7
8
9
10
11
|
<?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 "網(wǎng)站名稱:" .odbc_result( $rs , "webname" ); echo "<br/>網(wǎng)站地址:" .odbc_result( $rs , "website" ); } odbc_close( $conn ); ?> |
說(shuō)明:首先使用odbc_connect連接access數(shù)據(jù)庫(kù),前三個(gè)參數(shù)分別為:$DSN,數(shù)據(jù)庫(kù)用戶名,密碼,第四個(gè)參數(shù)設(shè)置為SQL_CUR_USE_ODBC主要是為了避免連接Access數(shù)據(jù)庫(kù)發(fā)生意外錯(cuò)誤;然后使用odbc_do執(zhí)行查詢操作,并調(diào)用odbc_fetch_row、odbc_result輸出查詢內(nèi)容,最后使用odbc_close關(guān)閉Access數(shù)據(jù)庫(kù)連接。
至此使用PHP ADOdb、PDO、ODBC連接Access數(shù)據(jù)庫(kù)并進(jìn)行操作的代碼實(shí)例就介紹完了,通過(guò)上述實(shí)例,我們可以看到其實(shí)PHP連接Access數(shù)據(jù)庫(kù)的方法大同小異,使用哪種方法取決于PHP環(huán)境的配置情況。
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。