首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

VS2010 DataGridView 連接資料庫實現增刪改查零程式碼教學

     編輯:程式設計綜合問答

需求場景

使用 VS2010 建立 Windows Forms 應用程式,連接資料庫實現資料的新增、刪除、修改、查詢功能,且盡量減少手寫程式碼。

目標介面示意圖

零程式碼實現步驟

1. 建立資料來源

  1. Data 菜單 → Show Data Sources
  2. Add New Data Source → Database → DataSet
  3. 選擇/新增連線字串,選取資料表
  4. 完成後會在專案產生 Database1DataSet.xsd

2. 設計介面

  1. 從 Data Sources 視窗將資料表**拖曳**到 Form 上
  2. 自動產生:DataGridView、BindingNavigator、BindingSource、TableAdapter、DataSet
  3. BindingNavigator 內建新增、刪除、儲存、導航按鈕

3. 關鍵屬性設定

  • DataGridView:Dock = Fill、AllowUserToAddRows = true、AllowUserToDeleteRows = true
  • BindingSource:DataSource = database1DataSet、DataMember = TableName
  • TableAdapter:自動產生 Select/Insert/Update/Delete 指令

4. 唯一需寫的程式碼:儲存變更

private void bindingNavigatorSaveItem_Click(object sender, EventArgs e) {
    this.Validate();
    this.tableBindingSource.EndEdit();
    this.tableAdapterManager.UpdateAll(this.database1DataSet);
}

進階功能擴充

資料驗證

在 DataSet 設計師中,對欄位設定:
- NullValue → (Exception) 或預設值
- MaxLength、AutoIncrement 等

主從關聯顯示

  1. DataSet 設計師中建立 Relation
  2. 將子表拖曳到 Form,選擇 Details 模式
  3. 自動產生 Master-Detail 綁定

自訂查詢

  1. TableAdapter 右鍵 → Add Query
  2. 輸入參數化 SQL:SELECT * FROM Table WHERE Name LIKE @Name
  3. 方法命名:FillByName、GetDataByName
  4. 呼叫:tableAdapter.FillByName(dataSet.Table, "%" + txtSearch.Text + "%")

常見問題排查

問題原因解決
刪除後資料未更新未呼叫 UpdateAll確認 SaveItem 事件已連結
新增列無法編輯AllowUserToAddRows=false設為 true
外鍵欄位顯示 ID未設定 Lookup 欄位DataGridView 欄位設定 DataPropertyName 為關聯欄位
並發衝突錯誤資料被他人修改TableAdapter 設定 Optimistic Concurrency

遷移建議

VS2010 已停止支援,新專案建議:

  • 升級至 VS2022 + .NET 6/8
  • 改用 Entity Framework Core + DataGridView
  • 或採用 WPF / Blazor / MAUI 現代化架構

善用 Visual Studio 內建資料繫結架構,快速構建資料驅動型桌面應用。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved