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

ASP
ASP调用ORACLE存储过程并返回结果集
用ASP实现网页BBS
关于Global.asa文件的深入研究与session变量失效提示的具体方法
简易ASP+注册系统
防护手册:如何防止ASP木马在服务器上运行
用Visual Basic实现多画面播放功能之二
如何增强ASP程序性能(1)
如何增强ASP程序性能(2)
如何增强ASP程序性能(3)
ASP备份数据库
二十八条改善 ASP 性能和外观的技巧
在Form域中Post大于100K的数据
如何使用ASP制作模似动态生长的表单?
Microsoft IIS 真的如此「不安全」吗?(1)
Microsoft IIS 真的如此「不安全」吗?(2)
Microsoft IIS 真的如此「不安全」吗?(3)
Microsoft IIS 真的如此「不安全」吗?(4)
Microsoft IIS 真的如此「不安全」吗?(5)
关于页面和代码分离
ServerVariables 对路径的操作

亲密接触ASP.Net(7)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 26 ::
收藏到网摘: 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中操作数据(