SqlDataReader類
可以用SqlDataReader類對象從SQL Server數據庫中讀取行;用OleDbDataReader類對象從支持OLE DB的數據庫中讀行,如Oracle與Access;用OdbcDataReader類對象從支持ODBC的數據庫中讀取行。
DataReader對象允許你以向前的,只讀的方式讀取數據,有時候DataReader對象也稱為消軟管游標。DataReader對象采用了一種簡化的數據讀取方式,但是提高了性能的同時也犧牲了很多特性。例如在DataSet中支持的排序,分頁等功能。這些功能將在以後的章節進行詳細的介紹。
SqlDataReader的屬性
屬性 說明 Depth 其返回類型為int,取得表示當前行嵌入深度的值 FieldCount 其返回類型為int,取得當前行的列數 IsColsed 其返回類型為bool,取得一個布爾值,表示是否關閉數據讀取 RecordsAffected 其返回類型為int, 取得執行SQL語句增加、修改或刪除的行數。
SqlDataReader的方法
方法
說明
Reader()
其返回類型為bool,將數據閱讀器移到結果集的下一行並讀取該行。這個方法返回的布爾值表示結果集中是否有多行
GetValue()
其返回類型為object, 返回指定列的值
GetValues()
其返回類型為int,將當前行中所有列的值復制到指定對象數組。這個方法返回的int是數組元素的個數
NextResult()
其返回類型為bool,將數據閱讀器移到結果集的下一行。這個方法返回的布爾值表示結果集中是否有多行
Close() 關閉
SqlDataReader 對象
GetInt32(),GetChar(),
GateDataTime(),Get×××()
返回指定列的值,並且返回的類型為相應的數據類型。例如GetInt32()返回整型的數值。注意,如果你將返回值賦予一個類型不匹配的變量時,將會拋出一個InvalidCastException異常
用ExecuteReader()方法執行查詢
下面是一個用ExecuteReader()方法執行SELECT語句的范例。這個方法用DataReader對象返回結果集,然後可以用此對象讀取數據庫返回的行。