共用方式為


連接至 Visual Studio 中的資料概觀

更新:2007 年 11 月

Visual Studio 提供許多工具,可讓您將應用程式連接到不同來源的資料,例如資料庫、Web 服務和物件。如果您使用 Visual Studio 中的資料設計工具,通常不需要為表單或元件明確建立連接物件。通常只要完成其中一個資料精靈,或是將資料物件拖曳至表單之後,即可建立連接物件。若要將應用程式連接至資料庫、Web 服務或物件等的資料,請執行資料來源組態精靈 (從資料來源視窗選取 [加入新資料來源])。

下圖將示範當資料的連接是透過執行 TableAdapter 查詢來擷取資料,並將資料顯示在 Windows 應用程式的表單上時的標準作業流程。

用戶端應用程式中的資料流程

在某些情況下,您可能認為沒有任何資料設計工具協助之下,就可以很方便建立連接物件。如需以程式設計方式建立連接的詳細資訊,請參閱連接至資料來源 (ADO.NET)

注意事項:

如需將 Web 應用程式連接到資料的相關資訊,請參閱使用 ASP.NET 存取資料

建立連接

在 Visual Studio 中,使用新增/修改連接對話方塊 (一般) 設定連接。在其中一個資料精靈或伺服器總管/資料庫總管中編輯或建立連接時,或在 [屬性] 視窗中編輯連接屬性時,即會出現 [加入連接] 對話方塊。

當您執行下列其中一個動作時,會自動設定資料連接:

動作

說明

執行資料來源組態精靈

在 [資料來源組態精靈] 中選擇資料庫路徑時,會設定連接。如需詳細資訊,請參閱 HOW TO:連接至資料庫中的資料

執行 TableAdapter 組態精靈

在 [TableAdapter 組態精靈] 中可建立連接。如需詳細資訊,請參閱 HOW TO:建立 TableAdapter

執行 TableAdapter 查詢組態精靈

在 [TableAdapter 查詢組態精靈] 中建立連接。如需詳細資訊,請參閱 HOW TO:建立 TableAdapter 查詢

資料來源視窗將項目拖曳至表單或元件設計工具

從 [資料來源] 視窗將項目拖曳至 [Windows Form 設計工具] 或 [元件設計工具] 時,會建立連接物件。如需詳細資訊,請參閱顯示 Windows 應用程式之表單上的資料

將新資料連接加入至伺服器總管/資料庫總管

[伺服器總管/資料庫總管] 中的資料連接,會出現在資料精靈的可用連接清單中。如需詳細資訊,請參閱 HOW TO:在伺服器總管/資料庫總管中加入新的資料連接

連接字串

所有連接物件公開的成員大略相同。但指定的 OleDbConnection 物件可用的特定成員則是依據其連接的資料來源而定;不是所有資料來源都支援 OleDbConnection 類別的所有成員。

與連接物件有關聯的主要屬性為 ConnectionString 屬性。這個屬性是由一個字串所組成,字串中包含登入資料庫伺服器及指向特定資料庫所需之資訊的屬性/值組。一般的 ConnectionString 屬性可能看起來如下:

Provider=SQLOLEDB.1;Data Source=MySQLServer;Initial Catalog=NORTHWIND;Integrated Security=SSPI

此特定的連接字串指定,連接應該使用 Windows 整合式安全性。連接字串另外也可包含使用者名稱及密碼,但通常並不建議這麼做,原因是這些屬性會因此而編譯到應用程式中,因此有可能產生潛在的安全性漏洞。

安全性注意事項:

儲存連接字串細節 (如密碼) 會影響應用程式的安全性。使用「Windows 整合式安全性」是控制資料庫存取權的更安全方式。如需詳細資訊,請參閱保護連接資訊 (ADO.NET)

OLE DB 最常使用的屬性 (Attribute)/值組也分別由個別的屬性 (Property) 表示,例如 DataSource 及 Database。當使用連接物件時,您可以將 ConnectionString 屬性 (Property) 設定為單一字串,也可以設定個別的連接屬性 (Property) (如果您的資料來源需要不是由個別屬性 (Property) 表示的連接字串值,您必須設定 ConnectionString 屬性 (Property))。

儲存和擷取連接字串

連接字串可以儲存在已編譯應用程式或應用程式組態檔。如需詳細資訊,請參閱 HOW TO:儲存連接字串

開啟及關閉連結

連接的兩個主要方法分別是 Open 及 Close。Open 方法使用 ConnectionString 屬性中的資訊來聯繫資料來源,並建立開放式連接;Close 方法則會關閉連接。關閉連接非常重要,因為多數的資料來源只支援有限數目的開放連接,而且開放連接會佔用寶貴的系統資源。

如果您使用 TableAdapterDataAdapter 或 DataCommand,則不需要明確開啟及關閉連接。當您呼叫這些物件的方法 (例如配接器的 Fill 或 Update 方法) 時,此方法會檢查連接是否已開啟。如果尚未開啟,中介者會開啟連接、執行其邏輯,然後再次關閉連接。

在尚未開啟的情況下,類似 Fill 的方法只會自動開啟及關閉連接。如果已開啟連接,此方法會使用它,但不會將它關閉。這讓您自己能夠彈性地開啟及關閉資料命令。如果您有多個配接器共用一連接,可以這麼做。在這種情況下,當您呼叫 Fill 方法時,讓每個配接器開啟及關閉連接是相當沒有效率的做法。適當的做法是,您可以開啟連接、呼叫每個配接器的 Fill 方法,然後在完成時關閉連接。

共用連接

應用程式通常會有不同的使用者執行相同類型的資料庫存取。例如,許多使用者可能會查詢相同資料庫,取得相同資料。在這些情況下,讓應用程式共用 (或共用 (pool)) 資料來源的連接可增進應用程式的效能。而讓每個使用者開啟及關閉個別連接的額外負荷則可能對應用程式效能有不良的影響。

如果使用 OleDbConnectionOdbcConnectionOracleConnection 類別時,提供者會自動處理連接共用,因此您不需要自己做管理。

如果您使用 SqlConnection 類別,則是以隱含方式管理連接共用,但也提供選項來讓您自己管理共用。如需詳細資訊,請參閱SQL Server 連接共用 (ADO.NET)

交易

連接物件可支援含 BeginTransaction 方法的交易,這個方法可建立交易物件 (例如 SqlTransaction 物件)。接著交易物件會支援允許您認可或復原交易的方法。

交易是在程式碼中管理。如需詳細資訊,請參閱交易和並行 (ADO.NET)

.NET Framework 2.0 版加入了新的交易架構,可透過 System.Transactions 命名空間加以存取。此架構公開交易的方式,已完全整合在 .NET Framework 中 (包括 ADO.NET);如需詳細資訊,請參閱與 SQL Server 進行 System.Transactions 整合 (ADO.NET)

連接資訊與安全性

由於開啟連接會牽涉到存取重要資源 (即資料庫),因此在設定及使用連接方面通常需要考慮安全性的問題。

您保護應用程式及其資料來源存取的方式會依據您系統的架構而定。例如在 Web 應用程式中,使用者通常會取得網際網路資訊服務 (IIS) 的匿名存取,因此不會提供安全認證。在這種情況下,您的應用程式要維護其本身的登入資訊並使用它 (而非任何特定的使用者資訊) 來開啟連接以及存取資料庫。

安全性注意事項:

儲存連接字串細節 (如密碼) 會影響應用程式的安全性。使用「Windows 整合式安全性」是控制資料庫存取權的更安全方式。如需詳細資訊,請參閱保護連接資訊 (ADO.NET)

在內部網路或多層式的應用程式中,您可以使用 Windows、IIS 及 SQL Server 提供的整體安全性選項。在這個模型中,使用者的區域網路驗證 (Authentication) 認證也會用來存取資料庫資源,且在連接字串中不會使用明確的使用者名稱或密碼 (一般來說,權限是透過群組的方式,在資料庫伺服器電腦上建立,如此一來您就不需要為可能存取資料庫的每個使用者建立個別權限)。在這個模型中,您完全不需要儲存連接的登入資訊,而且保護連接字串資訊也不需要額外的步驟。

如需安全性的詳細資訊,請參閱下列頁面:

伺服器總管/資料庫總管的設計階段連接

[伺服器總管/資料庫總管] 讓您能夠建立資料來源的設計階段連接。這允許您瀏覽可用的資料來源、顯示資料表、資料行及其包含的其他項目,同時編輯並建立資料庫項目。

應用程式並不直接使用 [伺服器總管/資料庫總管] 中的可用連接。而是在設計階段由 Visual Studio 使用這些連接處理資料庫。如需詳細資訊,請參閱 Visual Database Tools

例如,在設計階段,您可能使用 [伺服器總管/資料庫總管] 建立資料庫連接。隨後當您設計表單時,您可以瀏覽資料庫、從資料表選取資料行並將其拖曳至 DataSet 設計工具 上。在資料集,隨即建立 TableAdapter。同時建立新連接物件 (為新建立的 TableAdapter 的一部分)。

關於設計階段連接的資訊會獨立儲存在您的本機電腦,不受特定專案或方案的影響。因此,在使用應用程式時,一旦建立設計階段連接,那麼只要您使用 Visual Studio (只要連接指向的伺服器可用),它就會出現在 [伺服器總管/資料庫總管] 中。如需使用 [伺服器總管/資料庫總管] 和建立設計階段連接的詳細資訊,請參閱 HOW TO:在伺服器總管/資料庫總管中加入新的資料連接

請參閱

工作

HOW TO:連接至資料庫中的資料

逐步解說:連接至資料庫中的資料

其他資源

連接至 Visual Studio 中的資料

使用 ASP.NET 存取資料

準備您的應用程式以接收資料

將資料擷取至您的應用程式中

顯示 Windows 應用程式之表單上的資料

在您的應用程式中編輯資料

驗證資料

儲存資料