DataReader使用

王朝asp·作者佚名  2006-01-09
宽屏版  字体: |||超大  

ADO.Net 有两种访问数据库源的方式,分别为Dagareader对象及DataSet 对象,就里说一下DataReader

DataReader对象是用来读取数据库的最简单方式,它只能读取,不能写入,并且是从头至尾往下读的,无法只读某条数据,但它占用内存小,速度快,有时需要用.

DataReader的创建

首行当然是打开数据库,然后建立Command对象,确认执行的SQL语句,最后用Commandname.ExecuteReader()方式返回一个DataReader对象,有二种方式

ACCESS数据库:

Dim ObjReader As OleDataReader = objCmd.ExecuteReader()

MSSQL数据库

Dim ObjReader As SqlDataReader = objCmd.ExecuteReader()

objReader 是建立后的Datareader的实例

DataReader 常用属性

属性表 FieldCount

获取字段数目

IsClosed

取得状态True or Fals

Item({name,ordinal})

获取或设置字段内容,name为字段名,ordinal为字段序号,可选用

RecordsAffected

获取执行insert delete 或update后有多少行受到影响

DataReader 常用方法

CLose() 关闭

GetBoolean(ordinal) 取得第 ordinal+1列的内容,返回值为boolean类型,还有GetByte(ordinal),GetDecimal(ordinal).....

GetDataTypeName(ordinal) 取得第ordinal+1列的源数据类型名称

GetFileType(ordinal) 取得第ordinal+1列的数据类型

GetName(ordinal) 取得ordinal+1列的字段名称

GetOrdinal(name) 取得字段名称为name的字段列号

GetValue(ordinal) 取得ordinal+1列的内容

GetValues(values) 取得所有字段内容,并将内容放在values数组中,数组大小与字段数目相等,些方式比GetValue()更有效率

IsDBNull(orderinal) 判断第ordinal+1列是否为Null ,返回Boolean

Read() 读取下一条数据,如果没有了,将返回False

做个例子(SQL数据库):

'创建数据库

Dim objConn As New SqlConnection

objConn.ConnectionString = "server=localhost;database=xxxx;uid=sa;pwd=xxxxx"

objConn.open()

'Label1.Text = "数据库已打开"

'创建DataReader对象

Dim objCmd As New SqlCommand

objCmd.Connection = objConn

objCmd.CommandText = "select * from adminlog_cc"

Dim objReader As SqlDataReader = objCmd.ExecuteReader()

'读取并显示数据

Dim I As Integer

Response.Write("<table border='1'><tr align='center'>")

For I = 0 To objReader.FieldCount - 1

Response.Write("<td>" & objReader.GetName(I) & "</td>")

Next

Response.Write("</tr>")

While objReader.Read

Response.Write("<tr>")

For I = 0 To objReader.FieldCount - 1

Response.Write("<td>" & objReader.GetValue(I) & "</td>")

Next

Response.Write("</tr>")

End While

Response.Write("</table>")

'关闭

objReader.Close()

objConn.Close()

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有