詳解于ADO .NET 類操作數(shù)據(jù)
ADO.這個連接對象可以是SQLConnection 或是 ADOConnection,這取決于所采用的目標提供程序. 需要記住的是,雖然在這里不做推薦,但你也可以利用ADO .NET 類來連接到SQL Server數(shù)據(jù)庫.
這種方法唯一不足是,代碼需要通過一個不必要的額外代碼層. 首先它會調(diào)入ADO的托管提供程序, 然后ADO的托管提供程序再調(diào)用SQL Server OLE DB 提供程序. 如同OLE DB 提供程序做的一樣,SQL Server 托管提供程序會直接操作數(shù)據(jù),
關(guān)于ADO 和ADO.NET在連接對象上***的差別在于ADO.NET連接不支持CursorLocation屬性.與其說這是一個文檔BUG,還不如認為這是一個備具爭議的設(shè)計問題.為強制執(zhí)行它的以數(shù)據(jù)為中心的基準,ADO .NET 類沒有游標的顯示實現(xiàn).#t#
在ADO中,你已習慣于利用游標將記錄從數(shù)據(jù)庫或其它OLE DB兼容的數(shù)據(jù)源中抽取, 你可以選擇客戶端或是服務(wù)器端游標,每種游標都有幾個預先設(shè)定的游標類型. 而在ADO.NET中更多的是從數(shù)據(jù)源中抽取數(shù)據(jù),并且為讀取和分析數(shù)據(jù)提供新的編程接口
在ADO中,通過規(guī)定連接和命令文本,你可以創(chuàng)建一個Recordset 對象.對于游標的位置和類型Recordset有一些規(guī)定.ADO .NET 類你可以按下面的方法來讀取數(shù)據(jù).在內(nèi)存中創(chuàng)建選定記錄的靜態(tài)副本,然后在斷開與數(shù)據(jù)源的連接時對副本進行處理,ADO稱之為靜態(tài)游標.
通過快速的, 僅向前的, 只讀游標來滾動數(shù)據(jù),,ADO稱之為僅向前游標.通過服務(wù)器端游標來訪問數(shù)據(jù),需要良好的連接,但您可以在不同層面上檢測由其它連線用戶輸入的信息,ADO稱之為: 動態(tài)游標.
頭兩種都是在斷開的recordsets上進行操作,并從客戶端緩存中讀取信息,另外,前兩種方式也常被用于面向WEB的環(huán)境中以及全新的 n-tier 系統(tǒng)當中.在ADO中,以上所有這些方式與不同類型的游標相對應(yīng) .在文中,你將會發(fā)現(xiàn),ADO .NET 類雖然與ADO不同,但它具備了ADO的所有功能.相對照來說,你的代碼將從實際的數(shù)據(jù)源及其物理存儲媒介和格式中抽取數(shù)據(jù).