詳細(xì)分析ADO.NET訪問數(shù)據(jù)庫技術(shù)說明
本文著重解釋ADO.NET訪問數(shù)據(jù)庫的步驟,在介紹ADO.NET訪問數(shù)據(jù)庫技術(shù)之前,首先讓大家要理解什么是ADO.NET訪問數(shù)據(jù)庫技術(shù),ADO.NET訪問數(shù)據(jù)庫有哪些注意的問題。
不論從語法來看,還是從風(fēng)格和設(shè)計目標(biāo)來看,ADO.NET都和ADO有顯著的不同。在ASP中通過ADO訪問數(shù)據(jù)庫,一般要通過以下四個步驟:
1、 創(chuàng)建一個到數(shù)據(jù)庫的鏈路,即ADO.Connection;
2、 查詢一個數(shù)據(jù)集合,即執(zhí)行SQL,產(chǎn)生一個Recordset;
3、 對數(shù)據(jù)集合進(jìn)行需要的操作;
4、 關(guān)閉數(shù)據(jù)鏈路。
在ADO.NET里,這些步驟有很大的變化。ADO.NET的最重要概念之一是DataSet。DataSet是不依賴于數(shù)據(jù)庫的獨(dú)立數(shù)據(jù)集合。所謂獨(dú)立,就是:即使斷開數(shù)據(jù)鏈路,或者關(guān)閉數(shù)據(jù)庫,DataSet依然是可用的。如果你在ASP里面使用過非連接記錄集合(Connectionless Recordset),那么DataSet就是這種技術(shù)的最徹底的替代品。#t#
有了DataSet,那么,ADO.NET訪問數(shù)據(jù)庫的步驟就相應(yīng)地改變了:
1、 創(chuàng)建一個數(shù)據(jù)庫鏈路;
2、 請求一個記錄集合;
3、 把記錄集合暫存到DataSet;
4、 如果需要,返回第2步;(DataSet可以容納多個數(shù)據(jù)集合)
5、 關(guān)閉數(shù)據(jù)庫鏈路;
6、 在DataSet上作所需要的操作。
DataSet在內(nèi)部是用XML來描述數(shù)據(jù)的。由于XML是一種平臺無關(guān)、語言無關(guān)的數(shù)據(jù)描述語言,而且可以描述復(fù)雜數(shù)據(jù)關(guān)系的數(shù)據(jù),比如父子關(guān)系的數(shù)據(jù),所以DataSet實際上可以容納具有復(fù)雜關(guān)系的數(shù)據(jù),而且不再依賴于數(shù)據(jù)庫鏈路。
ADO.NET訪問數(shù)據(jù)庫有許多對象。我們先看看最基本的也最常用的幾個。首先看看ADOConnection。和ADO的ADODB.Connection對象相對應(yīng),ADOConnection維護(hù)一個到數(shù)據(jù)庫的鏈路。為了使用ADO.NET對象,我們需要引入兩個NameSpace:System.Data和System.Data.ADO,使用ASP.NET的Import指令就可以了: