今天複習到了ADO.NET,就把他們的知識梳理總結出來 ADO.NET 是一組向 .NET 程式員公開數據訪問服務的類。提供了對各種關係數據、XML 和應用程式數據的訪問。 所有的數據訪問類位於System.Data.dll中。System.Data包含了DataSet以及其他的支持類;System ...
今天複習到了ADO.NET,就把他們的知識梳理總結出來
ADO.NET 是一組向 .NET 程式員公開數據訪問服務的類。提供了對各種關係數據、XML 和應用程式數據的訪問。
所有的數據訪問類位於System.Data.dll中。System.Data包含了DataSet以及其他的支持類;System.Data.SqlClient數據提供程式專用於SQL Server資料庫。
NET Framework數據提供程式提供5個核心對象(ADO.NET的五個核心對象)
1. Connection連接對象,用於與特定的數據源建立連接。連接伺服器的4個參數,server=.;uid=sa;pwd=;database=northwind打開連接Open(),關閉連接Close()
2. Command執行對象,用於對數據源執行命令
兩個屬性對誰執行什麼操作:
-
-
- CommandText:SQL語句字元串
- Connection:執行的連接對象
-
三個函數執行命令:
- ExecuteNonQuery( ),方法執行insert,update,delete語句,返回受影響的行數是int類型。
- ExecuteReader方法執行select語句,返回SqlDataReader只讀數據集
- ExecuteScalar()方法執行select語句,主要是帶聚合函數的查詢。返回結果集中第一行第一列值,是object類型
3. DataReader對象,數據閱讀器,它裡面的數據是只讀的,且只向前逐行讀取。
-
- 函數:Read()用於從數據源中讀取下一條記錄,返回bool值,true為有數據;false為無數據;其中一條記錄的某個列的值dr["列名"]。
4. DataAdapter對象,數據適配器,用於用數據源的數據填充 DataSet數據集並解析更新數據集
-
- Fill()方法,執行查詢,填充DataSet
5. DataSet對象存放數據集,實際上是從數據源中檢索到的數據在記憶體中的緩存。在DataSet中可以包含多個DataTable,可以簡單的理解為一個臨時的小型關係資料庫。它是支持ADO.NET的斷開式、分散式數據方案的核心對象。所以在與資料庫斷開連接後,DataSet中的數據不會消失。調用DataAdapter對象的Fill()方法將查詢到的數據填充到DataSet。
f) DataSet結構:
- i. DataSet——DataTable——(DataColum,DataRow,DataView……)
- ii. DataSet ds由表格集合,屬性為Tables,取某張表ds.Tables[0],每一張表都是一個DataTable
- iii. 每張表又由列(DataColum)、行(DataRow)、視圖(DataView)等構成
- 列集合屬性dt. Columns;
a) 在表格中添加列dt.Columns.Add("列名")
b) 刪除列dt.Columns.Remove("列名");
c) 清空列dt.Columns.Clear();
- 行集合屬性dt.Rows
a) 按dt表結構創建一個行DataRow row = dt.NewRow();
b) 添加一行記錄dt.Rows.Add(row)
c) 移除一行記錄dt.Rows.Remove(row)
d) 清空所有行dt.Rows.Clear()
- 獲取DataSet集合ds中指定表Tables[0]指定行Rows[0]指定列.Rows[0]["UserName"]的值,語法:DataSet對象名.Tables[表名或表索引號].Rows[行號][列號或列名]