当前位置: 首页 > 图文教程 > 网络编程 > ASP > 亲密接触ASP.Net(7)

ASP
Access 2000 数据库 80 万记录通用快速分页类
Microsoft JET Database Engine 错误 ''80004005'' 未指定的错误的完美解决方法
收藏的ASP常用的函数集
asp分页的一个类
ASP开发网页牢记注意事项
ASP下操作Excel技术总结分析
ASP数据岛操作类
ASP经典分页类
asp论坛在线人数统计研究
ASP调用SQL SERVER存储程序
asp输出bmp
ASP连接数据库的全能代码
ASP面向对象编程探讨及比较
web文件管理器的后续开发
一小偷类!!有兴趣的可以看看
利用ASP实现事务处理的方法
大数量查询分页显示 微软的解决办法
如何把ASP编写成DLL
asp实现树型结构
超级ASP大分页_我的类容我做主

亲密接触ASP.Net(7)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 224 ::
收藏到网摘: n/a

       上一节,我们简单的讲了一下数据库的应用,而我们没有具体说明执行语句如何用于显示。呵呵,是留在这一章节中讲的。这里我们必须得了解一下DataReader,DataSet和DataGrid控件,DataGrid是显示控件,大家自已去看它相关的应用,我们在这里不哆嗦,DataReader和DataSet都可以用来储存数据内容,不过DataReader只能储存查询的结果,DataSet就相对来说复杂多了,他的功能很强大,我们一步步来讲,这一节还讲不完,我们这一节只讲其关于储存数据库的功能,呵呵,为了和DataReader的讲解嘛.
  
  讲数据库,首先得有用的数据才行,我这里随便搞了一个数据库,名为Company,再加了几条数据进去
  
  DataReader
  
  DataReader看名字就知道了,就是读取数据,我们可以通过Command的Execute方法,将取得的数据存入DataReader,DataReader有很多方法和属性,常用的是Read,这里我也不想多讲.我们还是先看看它的具体应用吧。
  
  
  <% @ Page Language="C#" %>
  <% @ Import Namespace="System.Data" %>
  <% @ Import Namespace="System.Data.SQL" %>
  <Script Language="C#" Runat="Server">
  public void Page_Load(Object src,EventArgs e)
  {
   //定义语句
   string mySelectQuery = "SELECT * from Company";
   string myConnString="server=localhost;uid=sa;pwd=123456;database=aspcn";
  
   //联结
   SQLConnection myConnection = new SQLConnection(myConnString);
   SQLCommand myCommand = new SQLCommand(mySelectQuery,myConnection);
   myConnection.Open();
   //定义DataReader
   SQLDataReader myDataReader;
   //赋与DataReader以结果
   myCommand.Execute(out myDataReader);
  
   //将DataReader与DataGrid进行捆绑
   show.DataSource=myDataReader;
   show.DataBind();
  
   //关闭
   myDataReader.Close();
   myConnection.Close();
  
  }
  </script>
  <html>
  <head>
  <title></title>
  </head>
  <body>
  <asp:DataGrid id="show" runat=server HeaderStyle-BackColor="#aaaadd" />
  </body>
  </html>
  
  
  在其中我们看到DataReader的定义
  
  SQLDataReader myDataReader;
  
  以及他的赋值
  
  myCommand.Execute(out myDataReader);
  
  完成这两步后,我们就将执行后的结果储存到DataReader中了。
  
  最后我们就将其捆绑(Bind)到DataGrid控件上去,如果不明白捆绑是什么,看本系例的文章吧  
  
  显示如下: id Name Age Sex Wage
  1 飞刀 20 男 1400
  2 张三 23 男 5000
  3 李四 47 男 7786
  4 王五 20 男 6788
  5 苗翠花 30 女 45676
  6 方世玉 20 男 4656
  
  
  另外告诉大家,如果我们需要取得DataReader储存特定字段的值可以使用myDataReader["fieldname"]类似的方法取得下面是个简单的例子
  
  .......
  while (myDataReader.Read())
  {
   Response.Write("<tr>");
   Response.Write("<td>"+myDataReader["Name"].ToString+"</td>");
   Response.Write("</tr>");
  }
  .......
  
  DataSet
  
  哇,这对于初学者来说,是个很难理解的东东啊。怎么说才好呢?我们可以把DataSet看成一个无联结的RecordSet(这个大家应当熟悉吧).DataSet中储存有数据,而且这个就像是一个数据库,里面存在表(Tables),列(Columns),关联(relationships),限制(constrains)以及数据。这一些和数据库没有什么两样,但是他不是数据库(怎么越说越糊涂),我们可以先在DataSet中操作数据(