向.Net进发 数据库连接操作

    昨天在cnblogs上发文章,真伤心啊!两位仁兄留言“还在ASP啊”,晕,看来我真是落后了!
    一直都在考虑选择新的WEB开发语言,可是在JSP/PHP/.Net三者之间来回徘徊了许久,还是不知道该往那个方向走!
    无奈之下,基于现实的考虑,看来还是选.NET吧,起码在我所处的这个城市,这个平台可以给我带来工资上的微薄提升!
    说开始就开始,先来熟悉数据库的操作,慢慢将ASP的操作用ASP.NET过一遍
    操作:连接数据库,读取表中数据
    采用的是OLEDB方式读取Access数据库,需要引入System.Data.OleDb

  1. protected void Page_Load(object sender, EventArgs e)  
  2. {  
  3.     OleDbConnection conn = new OleDbConnection();  
  4.     conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("db.mdb");  
  5.     conn.Open();  
  6.     OleDbCommand cmd = new OleDbCommand("select * from [article]",conn);  
  7.     OleDbDataReader dr = null;  
  8.     dr = cmd.ExecuteReader();  
  9.     while (dr.Read()) {   
  10.         Response.Write(dr["art_title"].ToString() + "<br>");  
  11.         Response.Write(dr["art_author"].ToString() + "<br>");  
  12.     }  
  13.     dr.Close();  
  14.     conn.Close();  


    上面的代码只是将代码输出到了客户端,并没有格式化,查看页面源代码,发现信息写在了页面之外。那么怎么正确输出呢?试着做新的尝试。我的要求是在表格里输出文章的标题和作者,首先添加一个Table控件,可以看到VS添加了如下的代码:

  1. <asp:Table ID="Table1" runat="server" Height="208px" Width="358px"> 
  2. </asp:Table> 

    查了查Table的用法,修改上次的代码如下:
  1. TableRow tr;  
  2. TableCell tc;  
  3. while (dr.Read()) {  
  4.     tr= new TableRow();  
  5.     tc = new TableCell();  
  6.     tc.Text = dr["art_title"].ToString();  
  7.     tr.Controls.Add(tc);  
  8.     tc = new TableCell();  
  9.     tc.Text = dr["art_author"].ToString();  
  10.     tr.Controls.Add(tc);  
  11.     Table1.Controls.Add(tr);  

    读取数据的同时,通过TableRow、TableCell生成表格行和单元格。生成网站,执行一下,数据合理的显示到了表格中。
posted @ 2008-09-25 12:31  shaoyun  阅读(222)  评论(0编辑  收藏  举报