DataReader对象作为一个asp.net中读取记录的一个比较好的控件,它的最大的优点就是速度快,使用频繁,而且在网站访问量很大的情况下,避免了因dataset对象过多的占用内存空间,造成服务器负担过重的情况.从而大大提高性能!
当然,它也有不好的地方,那就是datareader对象只能是根据read()方法判断,是一个只读的,仅向前的数据流.此外可以通过command对象的executereader来创建该对象.
下面是关于该控件的基本使用代码,希望对大家有用
1@ Page Language="VB" ContentType="text/html" ResponseEncoding="gb2312"
1@ import namespace="system.data"
1@ import namespace="system.data.sqlclient"
1<html>
2<head>
3<script language="vb" runat="server">
4sub page_load(sender as object,e as eventargs)
5dim cnn as sqlconnection
6dim cmd as sqlcommand
7dim html as string
8dim datar as sqldatareader
9'建立连接对象
10cnn=new sqlconnection("server=LYWS;uid=sa;pwd=sa;database=book")
11cmd=new sqlcommand("select * from bookinfo",cnn)
12cmd.connection.open()
13'将结果集赋给datareader对象
14datar=cmd.executereader()
15response.Write("<center><h2>图书信息表<h2><center>")
16response.Write("<center><table border=1 style='width:18cm'>")
17response.Write("<tr>")
18response.Write("<th>图书代码</th>")
19response.Write("<th>图书名称</th>")
20response.Write("<th>出版社</th>")
21response.Write("<th>定价</th>")
22response.Write("<th>版别</th>")
23response.Write("<th>作者</th>")
24response.Write("</tr>")
25
26try
27'调用datareader对象的reader方法,通过while循环,遍利结果集
28while (datar.read())
29response.Write("<tr>")
30response.Write("<td align='center'>" + datar("图书代码").tostring() + "</td>")
31response.Write("<td>" + datar("图书名称").tostring() + "</td>")
32response.Write("<td>" + datar("出版社").tostring() + "</td>")
33response.Write("<td align='right'>" + datar("定价").tostring() + "</td>")
34response.Write("<td>" + datar("版别").tostring() + "</td>")
35response.Write("<td>" + datar("作者").tostring() + "</td>")
36response.Write("</tr>")
37end while
38response.Write("</table></center>")
39finally
40datar.close()
41cnn.close()
42end try
43end sub
44</script>
45<meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
46<title>datareader对象测试!</title>
47</head>
48<body bgcolor="#9999ff">
49<br/>
50<br/>
51<hr align="center" width="70%"/>
52WEB+数据库设计系列 ->落叶无声 67060096
53
54</body>
55</html>