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

ADO.NET 中 OLEDB 與 ODBC 連接字串對比速查

     編輯:關於.NET

在 .NET 應用訪問 Access 數據庫時,常用 OleDb 與 Odbc 兩種提供者。本文提供標準連接字串模板,供快速參考。

OLEDB 連接字串 (推薦用於 Access)

string cns = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("App_Data\\Db.mdb");
OleDbDataAdapter da = new OleDbDataAdapter(sql, cns);
da.Fill(ds, "vView");
  • Provider:Microsoft.Jet.OLEDB.4.0 (32位) 或 Microsoft.ACE.OLEDB.12.0 (64位/Accdb)。
  • Data Source:mdb 文件絕對路徑。

ODBC 連接字串

string cns = "Driver={Microsoft Access Driver (*.mdb)};Dbq=" + Server.MapPath("App_Data\\Db.mdb");
OdbcDataAdapter da = new OdbcDataAdapter(sql, cns);
da.Fill(ds, "vView");
  • Driver:ODBC 驅動名稱,需在系統 DSN 中註冊。
  • Dbq:數據庫文件路徑。

選型建議

場景推薦理由
純 .NET 環境、Access mdbOLEDB (Jet)原生托管、性能較好、無需配置 DSN
64 位進程、Accdb 格式OLEDB (ACE)Jet 無 64 位版本,必須用 ACE Provider
跨平台/異構數據源ODBC標準化接口、驅動豐富、Linux/macOS 通用
避免安裝驅動OLEDBOffice 安裝自帶 Jet/ACE,ODBC 需單獨配置

常見問題

  • 「未在本機機器上註冊」:安裝 Access Database Engine (含 ACE Provider)。
  • 路徑含空格:用單引號包裹:Data Source='C:\My Path\Db.mdb'。
  • 並發寫入鎖定:Access 非服務器型數據庫,高併發建議遷移至 SQL Server / SQLite。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved