逐步解說:儲存資料至資料庫 (單一資料表)
在應用程式的開發過程中,最常見的一個情節是在 Windows 應用程式的表單上顯示資料並編輯資料,以及將更新的資料傳送回資料庫。 此逐步解說會建立一個簡略的表單,以在個別控制項中顯示單一資料表的資料。 您可以編輯控制項中的資料,並將變更存回資料庫。 此範例使用 Northwind 範例資料庫的 Customers 資料表。
您可以透過呼叫 TableAdapter 的 Update 方法,將應用程式的資料存回資料庫。 當您從 [資料來源] 視窗拖曳項目時,會針對第一個拖曳到表單上的資料表,自動加入儲存資料的程式碼。 所有加入到表單上的其他資料表,都需要手動加入儲存資料所需的任何程式碼。 需儲存多個資料表之資料的詳細資訊,請參閱 逐步解說:儲存資料至資料庫 (多個資料表)。
此逐步解說中所述的工作包括:
建立新的 Windows 應用程式專案。
使用資料來源組態精靈建立及設定應用程式中的資料來源。
設定 資料來源視窗 中項目的控制項。 如需詳細資訊,請參閱如何:設定從資料來源視窗拖曳時要建立的控制項。
從 [資料來源] 視窗將項目拖曳至表單,以建立資料繫結控制項。
修改資料集中的一些記錄。
加入程式碼,以將資料集中更新的資料傳送回資料庫。
注意事項 |
---|
根據您目前使用的設定或版本,您所看到的對話方塊與功能表命令可能會與 [說明] 中描述的不同。若要變更設定,請從 [工具] 功能表中選取 [匯入和匯出設定]。如需詳細資訊,請參閱Customizing Development Settings in Visual Studio。 |
必要條件
為了完成此逐步解說,您需要:
- Northwind 範例資料庫的存取權。 如需詳細資訊,請參閱如何:安裝範例資料庫。
建立 Windows 應用程式
第一步是建立 Windows 應用程式。 在此步驟中,可以選擇是否要為專案指派名稱,由於我們計劃要在稍後儲存專案,所以要給予名稱。
建立新的 Windows 應用程式專案
從 [檔案] 功能表中,建立新專案。
將專案命名為 UpdateSingleTableWalkthrough。
選取 [Windows 應用程式],然後按一下 [確定]。 如需詳細資訊,請參閱使用 .NET Framework 開發用戶端應用程式。
隨即建立 UpdateSingleTableWalkthrough 專案,並將其加入至方案總管。
建立資料來源
此步驟會使用 [資料來源組態精靈] 從 Northwind 資料庫建立資料來源。 您必須具有 Northwind 範例資料庫的存取權,才能完成精靈。 如需設定 Northwind 範例資料庫的資訊,請參閱 如何:安裝範例資料庫。
若要建立資料來源
按一下 [資料] 功能表上的 [顯示資料來源]。
在 [資料來源] 視窗中,按一下 [加入新資料來源],以啟動 [資料來源組態精靈]。
請選取 [選擇資料來源類型] 頁面上的 [資料庫],再按 [下一步]。
在 [選擇資料連接] 頁面中,執行下列其中一項工作:
如果下拉式清單中有提供 Northwind 範例資料庫的資料連接,請選取這個資料連接。
-或-
選取 [新增連接],以開啟 [加入/修改連接] 對話方塊。
如果資料庫需要密碼,請選取選項來加入敏感性資料,然後按一下 [下一步]。
在 [將連接字串儲存到應用程式組態檔] 頁面中按 [下一步]。
在 [選擇您的資料庫物件] 頁面上,展開 [資料表] 節點。
選取 [Customers] 資料表,然後按一下 [完成]。
NorthwindDataSet 會加入專案中,且 Customers 資料表會出現在 [資料來源] 視窗中。
設定要建立的控制項
在此逐步解說中,資料將設為 [詳細資料] 配置,也就是在個別控制項中顯示資料,而不是預設的 DataGridView 配置。
為資料來源視窗中的項目設定控制項
在 [資料來源] 視窗中展開 [Customers] 節點。
從 [Customers] 節點上的下拉式清單中選取 [詳細資料],以將 Customers 資料表的控制項變更為個別控制項。 如需詳細資訊,請參閱如何:設定從資料來源視窗拖曳時要建立的控制項。
建立資料繫結表單
您可以從 [資料來源] 視窗將項目拖曳至表單,以建立資料繫結控制項。
在表單上建立資料繫結控制項
從 [資料來源] 視窗中將 [Customers] 主節點拖曳至 Form1。
會在表單上顯示具有描述性標籤的資料繫結控制項,以及巡覽記錄的工具區域 (BindingNavigator)。 NorthwindDataSet、CustomersTableAdapter、BindingSource 及 BindingNavigator 會顯示在元件匣中。
修改程式碼以更新資料庫
您可以藉由呼叫 CustomersTableAdapter 的 Update 方法以更新資料庫。 根據預設,會將 BindingNavigator 的 [儲存] 按鈕的事件處理常式,加入至表單的程式碼,以將更新傳送至資料庫。 此程序會修改程式碼,透過將 try-catch 區塊中的更新呼叫換行,來包含錯誤處理。 您可以修改程式碼,使其符合應用程式的需求。
將更新邏輯加入至應用程式
按兩下 BindingNavigator 上的 [儲存] 按鈕,以為 bindingNavigatorSaveItem_Click 事件處理常式開啟程式碼編輯器。
取代事件處理常式中的程式碼,加入一些錯誤處理。 程式碼看起來應該如下所示:
Try Me.Validate() Me.CustomersBindingSource.EndEdit() Me.CustomersTableAdapter.Update(Me.NorthwindDataSet.Customers) MsgBox("Update successful") Catch ex As Exception MsgBox("Update failed") End Try
try { this.Validate(); this.customersBindingSource.EndEdit(); this.customersTableAdapter.Update(this.northwindDataSet.Customers); MessageBox.Show("Update successful"); } catch (System.Exception ex) { MessageBox.Show("Update failed"); }
測試應用程式
若要測試應用程式
按 F5。
變更一個或多個記錄的資料。
按 [儲存] 按鈕。
檢查資料庫中的值,確認已儲存變更。
後續步驟
視應用程式的需求而定,在 Windows 應用程式中建立資料繫結表單之後,您可能會有幾個想要執行的步驟。 一些您可以加強這個逐步解說的部分包括:
將搜尋功能加入至表單。 如需詳細資訊,請參閱如何:將參數型查詢加入至 Windows Form 應用程式。
加入顯示關聯資料的控制項。 如需詳細資訊,請參閱如何:在 Windows Form 應用程式中顯示相關的資料。
編輯資料來源,以加入或移除資料庫物件。 如需詳細資訊,請參閱如何:編輯資料集。
請參閱
概念
將 Windows Form 控制項繫結至 Visual Studio 中的資料