小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

.NET開發(fā)實戰(zhàn)之ADO.NET中的類

 秋水風帆 2010-12-30

14.2.2  ADO.NET中的類

ADO.NET中的類很多,從一次數(shù)據(jù)庫訪問過程看,一般需要4個或5個類,它們的順序如圖14-4所示。

 
圖14-4  數(shù)據(jù)庫訪問中類的順序

在使用這些類時,除了基礎類DataSet外,其他類的數(shù)據(jù)提供程序要一致,如SQLConnection、SQLCommand、SQLDataReader是一致的,OLEDbConnection、OLEDbCommand、OLEDbDataAdapter是一致的。

下面我們就以OLEDB數(shù)據(jù)提供程序為例來說明這些類。

1.基礎類DataSet

這個類是數(shù)據(jù)在內(nèi)存中駐留時的表示形式。無論什么數(shù)據(jù)源,它在內(nèi)存中的數(shù)據(jù)表示是一致的,因此它可以連接任何數(shù)據(jù)源。DataSet數(shù)據(jù)集可以包含任意數(shù)量的數(shù)據(jù)表,以及所有表的約束、索引和關系。它沒有與數(shù)據(jù)源聯(lián)系的能力,因此在使用DataSet對象之前,必須要有一個可以建立初始化數(shù)據(jù)的對象,即DataAdapter對象。

該類的主要屬性和方法如表14-1。

表14-1  DataSet類的主要屬性和方法

   

   

   

屬性

DataSetName

獲取或設置當前DataSet的名稱

Namespace

獲取或設置DataSet的命名空間

Tables

獲取包含在DataSet中的表的集合

Prefix

獲取或設置一個XML前綴,該前綴是DataSet的命名空間的別名

方法

Clear

通過移除所有表中的所有行來清除數(shù)據(jù)

Clone

復制DataSet的結構,不復制任何數(shù)據(jù)

Copy

復制該DataSet的結構和數(shù)據(jù)

ReadXml

XML架構和數(shù)據(jù)讀入DataSet

ReadXmlSchema

XML架構讀入DataSet

WriteXml

DataSetXML數(shù)據(jù),還可以選擇寫架構

WriteXmlSchema

XML架構形式的DataSet結構

2.OleDbDataAdapter

這個類可以建立并初始化數(shù)據(jù)集(即DataSet),與DataSet對象結合起來對數(shù)據(jù)源執(zhí)行SQL命令,提供DataSet對象所需要的存取數(shù)據(jù),可視為DataSet對象的操作核心,是DataSet對象與數(shù)據(jù)操作對象之間的溝通媒介。

該類的主要屬性和方法如表14-2所示。

表14-2  OleDbDataAdapter類的主要屬性和方法

   

   

   

屬性

DeleteCommand

獲取或設置SQL語句或存儲過程,用于從數(shù)據(jù)集中刪除記錄

SelectCommand

獲取或設置SQL語句或存儲過程,用于選擇數(shù)據(jù)源中的記錄

UpdateCommand

獲取或設置SQL語句或存儲過程,用于更新數(shù)據(jù)源中的記錄

InsertCommand

獲取或設置SQL語句或存儲過程,用于將新記錄插入到數(shù)據(jù)源中

方法

Fill

DataSet中添加或刷新行,以便與ADO RecordsetRecord對象中的行相匹配

Update

DataSet中每個已插入、已更新或已刪除的行調(diào)用相應的INSERT、UPDATEDELETE語句

GetFillParameters

獲取當執(zhí)行SQL SELECT語句時由用戶設置的參數(shù)

3.OleDbDataReader

提供一個單向向前移動且只讀的記錄集合,可以讀取由Command對象執(zhí)行命令所產(chǎn)生的數(shù)據(jù),只能與Command對象一起使用。

該類的主要屬性和方法如表14-3所示。

表14-3  OleDbDataReader類的主要屬性和方法

   

   

   

屬性

Depth

獲取一個值,用于指示當前行的嵌套深度

FieldCount

獲取當前行中的列數(shù)

HasRows

獲取一個值,用于指示OleDbDataReader是否包含一行或多行

IsClosed

指示是否可關閉數(shù)據(jù)讀取器

Item

獲取以本機格式表示的列的值

RecordsAffected

通過執(zhí)行SQL語句獲取更改、插入或刪除的行數(shù)

方法

GetBoolean

獲取指定列的布爾值形式的值

GetChar

獲取指定列的字符形式的值

GetDateTime

獲取指定列的DateTime對象形式的值

GetDecimal

獲取指定列的Decimal對象形式的值

GetDouble

獲取指定列的雙精度浮點數(shù)形式的值

GetFloat

獲取指定列的單精度浮點數(shù)形式的值

GetGuid

獲取指定列的值作為全局唯一標識符(GUID

GetInt16

獲取指定列的16位有符號整數(shù)形式的值

GetInt32

獲取指定列的32位有符號整數(shù)形式的值

GetString

獲取指定列的字符串形式的值

IsDBNull

獲取一個值,該值指示列中是否包含不存在的或已丟失的值

Read

使OleDbDataReader前進到下一條記錄

4.OleDbCommand

這個類可以操作數(shù)據(jù)源文件,對數(shù)據(jù)源下達操作數(shù)據(jù)庫的命令,即傳送SQL命令,執(zhí)行Action Query命令。

該類的主要屬性和方法如表14-4所示。

表14-4  OleDbCommand類的主要屬性和方法

   

   

   

屬性

CommandText

獲取或設置要對數(shù)據(jù)源執(zhí)行的SQL語句或存儲過程

CommandTimeout

獲取或設置在終止對執(zhí)行命令的嘗試并生成錯誤之前的等待時間

Connection

獲取或設置OleDbCommand的此實例使用的OleDbConnection

方法

ExecuteNonQuery

針對Connection執(zhí)行SQL 語句并返回受影響的行數(shù)

ExecuteReader

CommandText發(fā)送到Connection并生成一個 OleDbDataReader

ExecuteScalar

執(zhí)行查詢,并返回查詢所返回的結果集中第一行的第一列,忽略其他列或行

ResetCommandTimeout

CommandTimeout屬性重置為默認值

5.OleDbConnection

該類主要負責與數(shù)據(jù)源的連接,建立程序與數(shù)據(jù)源之間的聯(lián)系,這是數(shù)據(jù)庫操作的第一步。

該類的主要屬性和方法如表14-5所示。

表14-5  OleDbCommand類的主要屬性和方法

   

   

   

屬性

ConnectionString

獲取或設置用于打開數(shù)據(jù)庫的字符串

ConnectionTimeout

獲取在嘗試建立連接時終止嘗試并生成錯誤之前所等待的時間

Database

獲取當前數(shù)據(jù)庫或連接打開后要使用的數(shù)據(jù)庫的名稱

DataSource

獲取數(shù)據(jù)源的服務器名或文件名

Provider

獲取在連接字符串的“Provider = ”子句中指定的OLE DB提供程序的名稱

State

獲取連接的當前狀態(tài)

方法

Close

關閉到數(shù)據(jù)源的連接

Open

使用ConnectionString所指定的屬性設置打開數(shù)據(jù)庫連接

以上是以OLEDB數(shù)據(jù)提供程序為例來說明ADO.NET中的類,其他數(shù)據(jù)提供程序中的類屬性與方法與此類似,這里就不再一一列舉。在每一種數(shù)據(jù)提供程序的類中,除了DataSet類是公用類外,其他類均需要相應的命名空間支持,而且不可互相串用。

 

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多