首页 > 编程 > .NET > 正文

关于ADO.NET的一点补充----不知道是不是你想要的

2024-07-10 13:02:52
字体:
来源:转载
供稿:网友
关于ado.net的一点补充

作者: 孙雯

这几天比较无聊,猛得想起来还有东西没有写完,所以趁着星期六,就又写了一篇.它的例子是俺和一个我们年级的mm的,嘿嘿,可别笑我,现实中没有时间泡mm,在这里可要过把隐,哈哈!(台下,原来sunwen是这样一个人,唉......)

我的先前的教程里有一篇关于ado+的,就是访问数据库的那一篇,出了之后感觉非常地不好,感觉对不起大家了,写的的确非常地难,例子也选得不好,所以,今天我带来了一个简单的从数据库中读出数据的东东。
这个数据库的结构是这样的:


name age sex other school
茜茜 19 女 美女,爱好广泛 华中师范大学
孙雯 19 男 不帅,非常喜欢计算机和足球 华中师范大学


好了,让我们开始吧!下面是源程序(以asp.net来作,飞刀原来有一篇,但用的是bind,这篇不是):
<% @ page language="c#" %>
<% @ import namespace="system.data" %>
<% @ import namespace="system.data.ado" %>
<%
string connectionstring = "driver={microsoft access driver (*.mdb)}; dbq=c:/test/test.mdb;";
adoconnection myconn = new adoconnection(connectionstring);

string cmd="select * from tab";
adocommand mycmd=new adocommand(cmd,myconn);
mycmd.activeconnection.open();

adodatareader adr=null;

mycmd.execute(out adr);
response.write("<table border=2><tr><td align=center>姓名</td><td align=center>年龄</td><td align=center>性别</td><td align=center>备注</td><td align=center>学校</td></tr>");
while(adr.read())
{%>
<tr>
<td align="center">
<%=adr["name"].tostring()%>
</td>
<td align="center">
<%=adr["age"].tostring()%>
</td>
<td align="center">
<%=adr["sex"].tostring()%>
</td>
<td align="center">
<%=adr["other"].tostring()%>
</td>
<td align="center">
<%=adr["school"].tostring()%>
</td>

</tr>

<%}%>
</table>

其实,用dataset的功能是最强大的,但是让我们这些初学者一下接触它,未免太残忍了,因为它比原来的recordset要复杂地多,我看了一下它的api参考,头都要昏了(可能是我比较笨)。下面我们来分析一下代码。我想从response.write()后面就不要说了吧,那个很好理解。我的这个主要分三步:

1.建立数据库连接,这是每个东东都必须的.
adoconnection myconn = new adoconnection(connectionstring);

2.建立一个ado命令对象,并打开它,是这样的:
adocommand mycmd=new adocommand(cmd,myconn);
mycmd.activeconnection.open();

3.建立一个adodatareader对象,它的作用就是从数据库中读出数据,在java中用的很多,用了它,就不用rs.movenext这样的方法了,因为它是自动换行的.它每次只读一行,这是非常地好的,不用像记录集那样的东西,一次读很多,浪费服务器资源.

4.把命令执行的结果让adoreader来接收:
mycmd.execute(out adr);

然后,adr就成了一个类似指针的东东,自动执行movenext方法.

这是我的一点贡献,希望能对大家工作学习带来帮助!

(飞刀注:孙雯这一篇文章使我们在传统的web编程思维上理解了asp.net,但是我个人并不赞同使用<table>和reader来显示数据,因为asp.net是一种基于软件编程思想的web技术,如果我们还是用老的思想去思考程序,那么asp.net的优点将无法展现,使用web控件是asp.net区别于其它技术(特别是jsp)的关键。)
  • 本文来源于网页设计爱好者web开发社区http://www.html.org.cn收集整理,欢迎访问。
  • 发表评论 共有条评论
    用户名: 密码:
    验证码: 匿名发表