官术网_书友最值得收藏!

2.6 DataSet對象

DataSet對象可以用來存儲從數據庫查詢到的數據結果,由于它在獲得數據或更新數據后立即與數據庫斷開,具有離線訪問數據庫的特性,所以能高效地訪問和操作數據庫及接收海量的數據信息。

DataSet在訪問數據庫前并不知道數據庫里表的結構,在其內部,用動態XML的格式來存放數據,這樣DataSet能訪問不同數據源的數據。DataSet對象通過DataAdapter對象從數據庫里獲取數據并把修改后的數據更新到數據庫,本身并不同數據庫發生關系。

DataSet每一行都有一個RowState屬性,取值包括Deleted、Modified、New和Unchanged,表示當前行是否已經被刪掉、被更新、新添加,還是沒改變。

DataSet的屬性Tables可以獲取該DataSet中表的數量:DataSet.Tables.Count。DataSet的Tables是一個Table數組,指定其中的一個表:DataSet.Tables[i];//i為Table在數組序列中的位置或DataSet.Tables[“表名”];通過Table的Rows對象組的Count獲取該表的記錄數:DataSet.Tables[i].Rows.Count;獲取列數:DataSet.Tables[i].Columns.Count;

通過DataAdapter對象,向DataSet中填充數據和修改后的數據更新到數據源的一般過程如下。

1)創建DataAdapter和DataSet對象。

2)使用DataAdapter對象,為DataSet產生一個或多個DataTable對象。

3)DataAdapter對象從數據源中取出的數據填充到DataTable中的DataRow對象里,然后將該DataRow對象追加到DataTable對象的Rows集合中。

4)重復第2步,直到數據源中所有數據都已填充到DataTable里。

5)將第2步產生的DataTable對象加入DataSet里。

6)對DataSet的數據行進行增加、修改或刪除操作。

7)調用DataAdapter的Update方法,將DataSet中修改的數據更新到數據庫中。

主站蜘蛛池模板: 嘉鱼县| 青神县| 岑巩县| 新疆| 县级市| 兴隆县| 龙口市| 九寨沟县| 从化市| 西昌市| 乐山市| 自治县| 巨野县| 新昌县| 白城市| 汾西县| 克东县| 西昌市| 海盐县| 清水县| 沙坪坝区| 通州市| 霸州市| 大渡口区| 颍上县| 融水| 恩平市| 白银市| 明溪县| 武胜县| 日照市| 蒙自县| 盐山县| 丹巴县| 卫辉市| 东丽区| 淮北市| 吐鲁番市| 海安县| 彭泽县| 雷州市|