首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP連接Access數據庫雙方案:ODBC系統DSN vs ADO無DSN連接

     編輯:PHP 相關知識

場景

文件:D:\Access\db1.mdb,用戶Admin,密碼123

方案一:ODBC系統DSN (需預先配置)


// 控制面板 → 管理工具 → 數據源(ODBC) → 系統DSN → 添加
// 驅動: Microsoft Access Driver (*.mdb)
// DSN名: dbdsn

$conn = odbc_connect('dbdsn', 'admin', '123');
$result = odbc_exec($conn, "SELECT * FROM table WHERE condition");
while (odbc_fetch_row($result)) {
  echo odbc_result($result, 'field_name');
}
odbc_close($conn);

方案二:ADO無DSN連接 (推薦,部署簡單)


$conn = new COM('ADODB.Connection');
$dsn = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" . realpath('path/db1.mdb');
$conn->Open($dsn);

$rs = $conn->Execute("SELECT * FROM table WHERE condition");
while (!$rs->EOF) {
  echo $rs->Fields('field_name')->Value;
  $rs->MoveNext();
}
$rs->Close();
$conn->Close();

對比優劣

維度ODBC+DSNADO無DSN
部署需機器配置DSN僅需文件路徑
性能較好略低(COM調用)
可移植性差好
並發Access本身限制同

注意事項

  • Access適合極小型/單用戶/桌面場景,Web高併發請遷移MySQL/SQL Server
  • PHP需啟用php_com_dotnet.dll (Windows專有)
  • 文件路徑用realpath()獲取絕對路徑
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved