ADO.NET知識點
今天復習到了ADO.NET,就把他們的知識梳理總結出來
ADO.NET 是一組向 .NET 程序員公開數據訪問服務的類。提供了對各種關系數據、XML 和應用程序數據的訪問。
所有的數據訪問類位於System.Data.dll中。System.Data包含了DataSet以及其他的支持類;System.Data.SqlClient數據提供程序專用於SQL Server數據庫。
- .NET Framework數據提供程序提供5個核心對象
a) Connection連接對象,用於與特定的數據源建立連接。連接服務器的4個參數,server=.;uid=sa;pwd=;database=northwind打開連接Open(),關閉連接Close()
b) Command執行對象,用於對數據源執行命令
- i. 兩個屬性對誰執行什麽操作:
- CommandText:SQL語句字符串
- Connection:執行的連接對象
- ii. 三個函數執行命令:
- ExecuteNonQuery( ),方法執行insert,update,delete語句,返回受影響的行數是int類型。
- ExecuteReader方法執行select語句,返回SqlDataReader只讀數據集
- ExecuteScalar()方法執行select語句,主要是帶聚合函數的查詢。返回結果集中第一行第一列值,是object類型
- i. 兩個屬性對誰執行什麽操作:
c) DataReader對象,數據閱讀器,它裏面的數據是只讀的,且只向前逐行讀取。
- i. 函數:Read()用於從數據源中讀取下一條記錄,返回bool值,true為有數據;false為無數據;其中一條記錄的某個列的值dr["列名"]。
d) DataAdapter對象,數據適配器,用於用數據源的數據填充 DataSet數據集並解析更新數據集
- i. Fill()方法,執行查詢,填充DataSet
e) 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[行號][列號或列名]
- DataGridView控件顯示數據:
- i. 屬性:
- DataSource指定數據源一般為DataSet的DataTable表
- Columns列集合
- BorderStyle:邊框樣式
- BackGroudColor:背景顏色
- Dock:依靠位置
- GridColor:單元格網線顏色
- MultiSelect:是否多選
- ReadOnly:只讀
- SelectionMode:如何選中單格,如整行都選是FullRowSelect
- ii. 方法:
- ClearSelection():清除當前選擇
- iii. 事件:SelectionChanged:選中項發生變化時
- ComBoBox控件顯示數據:
a) DataSource屬性,指定數據源
b) DisplayMember屬性,指定下拉框中每一項的顯示值
c) ValueMember屬性,指定下拉框中每一項的實際值
ADO.NET知識點