ADO.NET 提供豐富的物件模型操作 SQL Server,核心類別皆位於 System.Data.SqlClient 命名空間。本文系統整理五大核心物件的用法與適用情境。
連線字串常見兩種認證模式:
Integrated Security=SSPI;Database=MyDatabase.mdf;Server=localhost;server=localhost; uid=sa; pwd=123; database=MyDatabase.mdf建立連線:SqlConnection conn = new SqlConnection(connectionString);
支援「無連接」與「保持連接」兩種操作模式。保持連接模式標準流程:
SqlConnection 實例SqlCommand 實例三大核心執行方法:
ExecuteNonQuery():執行 INSERT/UPDATE/DELETE,回傳影響筆數ExecuteReader():回傳 SqlDataReader,提供唯讀、順向、快速的資料流讀取ExecuteScalar():回傳單一值(如 COUNT、SUM 統計結果)透過離線方式實現資料庫與本地 DataSet 互動:
SqlDataAdapter 實例(提供 SELECT 語句)DataSet 實例Fill() 將資料填入 DataSetDataGridView 等控制項顯示/編輯Update() 回寫資料庫SqlCommandBuilder 可自動根據 SELECT 指令產生 INSERT/UPDATE/DELETE 命令。
代表記憶體中的資料表,支援斷線操作。建立方式:
new DataTable()DataSet.Tables.Add("TableName")核心操作:
Columns.Add() 新增欄位(DataColumn)PrimaryKey 陣列設定主鍵NewRow() 建立 DataRow,填值後 Rows.Add() 加入DataAdapter.Fill(dataTable) 直接從資料庫填充new DataSet(),動態定義結構DataSet,提供編譯期型別檢查與 IntelliSense使用 SqlDataAdapter.Fill(dataSet, "TableName") 填充資料,支援多資料表、關聯、條件約束等關聯式模型功能。