Share via


使用 ADO.NET 連接至 OLE DB 資料來源

OLE DB 的 .NET Framework 資料提供者使用 OleDbConnection 物件,提供連接給使用 OLE DB 公開的資料來源,以及 Microsoft SQL Server 6.x (含) 以前版本 (透過 SQL Server 的 OLE DB 提供者,SQLOLEDB)。

對於 OLE DB 的 .NET Framework 資料提供者,其連接字串格式與 ADO 中所用的相同,除了以下例外:

  • 必須有 Provider 關鍵字。
  • 不支援 URLRemote ProviderRemote Server 關鍵字。

如需 OLE DB 連接字串的詳細資訊,請參閱 MSDN Library 內《Platform SDK 文件》中的<建立連接字串>。

****注意   OleDbConnection 物件不支援 OLE DB 提供者 (Provider) 特定的設定或擷取動態屬性,而僅支援 OLE DB 提供者的連接字串中可能傳遞的屬性。

下列程式碼範例示範如何建立和開啟至 OLE DB 資料來源的連接。

Dim nwindConn As OleDbConnection = New OleDbConnection("Provider=SQLOLEDB;Data Source=localhost;" & _
                                                       "Integrated Security=SSPI;Initial Catalog=northwind")
nwindConn.Open()
[C#]
OleDbConnection nwindConn = new OleDbConnection("Provider=SQLOLEDB;Data Source=localhost;" +
                                                "Integrated Security=SSPI;Initial Catalog=northwind");
nwindConn.Open();

通用資料連結檔案

使用通用資料連結 (Universal Data Link,UDL) 檔案可為 OleDbConnection 提供連接資訊。由於 UDL 檔案對應用程式來說是外部資源,因此應該使用 New Technologies File System (NTFS) 檔案使用權限來保衛連接資訊受到公開或修改,以藉此保護 UDL 檔案。另外,也請提供 UDL 檔案的完整路徑,確保連接使用正確的 UDL 標案。

但是,因為 UDL 檔案可由任何 ADO.NET 用戶端程式從外部修改,所以每次連接開啟時,包含 UDL 檔案參考的連接字串便會被剖析。這個步驟可能會降低效能,所以為了達到最高效能,建議您使用不包含 UDL 檔案的靜態連接字串。

關閉連接

建議在使用了 Connection 之後都能將它關閉,這樣連接才能傳回至集區。您可以使用 Connection 物件的 CloseDispose 方法來進行這項作業。未明確關閉的連接也許會無法加入或傳回至集區。例如,如果已達到最大集區大小,而且連接仍為有效時,那麼已超出範圍但尚未明確關閉的連接將只會傳回至連接集區。

**注意   **請不要在類別的 Finalize 方法中,呼叫 ConnectionDataReader 或任何 Managed 物件上的 CloseDispose。在完成項中,只需釋放類別直接擁有的 Unmanaged 資源。如果類別未擁有任何 Unmanaged 資源,請不要在類別定義中包含 Finalize 方法。如需詳細資訊,請參閱記憶體回收的程式設計

請參閱

使用 .NET Framework 資料提供者存取資料 | OleDbConnection 類別 | System.Data.OleDb 命名空間