創(chuàng)建ADO.NET對(duì)象相關(guān)操作
ADO.NET對(duì)象可以在與數(shù)據(jù)庫(kù)斷開連接的方式下通過DataSet或DataTable對(duì)象進(jìn)行數(shù)據(jù)處理,當(dāng)需要更新數(shù)據(jù)時(shí)才重新與數(shù)據(jù)源進(jìn)行連接,并更新數(shù)據(jù)源。ADO.NET對(duì)象表示保存在本機(jī)內(nèi)存中的表,它提供了對(duì)表中行列數(shù)據(jù)對(duì)象的各種操作。
可以直接將數(shù)據(jù)從數(shù)據(jù)庫(kù)填充到DataTable對(duì)象中,也可以將DataTable對(duì)象添加到現(xiàn)有的DataSet對(duì)象中。在斷開連接的方式下,DataSet對(duì)象提供了和關(guān)系數(shù)據(jù)庫(kù)一樣的關(guān)系數(shù)據(jù)模型,代碼中可以直接訪問DataSet對(duì)象中的DataTable對(duì)象,也可以添加、刪除DataTable對(duì)象。
1. 創(chuàng)建DataTable對(duì)象
可以通過以下兩種方式創(chuàng)建DataTable對(duì)象:
1) 通過DataTable類的構(gòu)造函數(shù)創(chuàng)建DataTable對(duì)象,例如:
DataTable table = new DataTable();
2) 通過DataSet的Tables對(duì)象的Add方法創(chuàng)建DataTable對(duì)象,例如:
DataSet dataset = new DataSet();
DataTable table = dataset.Tables.Add("MyTableName");
2. 在DataTable對(duì)象中添加列#t#
在DataTable對(duì)象中添加列的最常用的方法是通過DataTable對(duì)象的Column屬性中的Add方法。添加后的每一列都是一個(gè)DataColumn對(duì)象。
3. 設(shè)置DataTable對(duì)象的主鍵
關(guān)系數(shù)據(jù)庫(kù)中的表一般都有一個(gè)主鍵,用來惟一標(biāo)識(shí)表中的每一行記錄。通過DataTable對(duì)象的PrimaryKey屬性可以設(shè)置Datatable的主鍵。主鍵可以是一個(gè)或者多個(gè)DataColumn對(duì)象組成的數(shù)組。例如:
DataColumn[] key = new DataColumn[1];//dt是一個(gè)DataTable對(duì)象
key[0] = dt.Columns[0];
dt.PrimaryKey = key;
4. 在DataTable對(duì)象中創(chuàng)建行
DataTable對(duì)象的每一行都是一個(gè)DataRow對(duì)象,所以創(chuàng)建行時(shí)可以先利用DataTable對(duì)象的NewRow方法創(chuàng)建一個(gè)DataRow對(duì)象,并設(shè)置新行中各列的數(shù)據(jù),然后利用Add方法將DataRow對(duì)象添加到表中
5. 將SQL Server數(shù)據(jù)庫(kù)中的表填充到DataTable中
除了可以直接創(chuàng)建DataTable對(duì)象的行列信息外,也可以通過DateAdapter對(duì)象的Fill方法將SQL Server數(shù)據(jù)庫(kù)中的表填充到DataTable對(duì)象中。