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

无奈之下,基于现实的考虑,看来还是选.NET吧,起码在我所处的这个城市,这个平台可以给我带来工资上的微薄提升!
说开始就开始,先来熟悉数据库的操作,慢慢将ASP的操作用ASP.NET过一遍
操作:连接数据库,读取表中数据
采用的是OLEDB方式读取Access数据库,需要引入System.Data.OleDb


代码如下:

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

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


代码如下:

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

查了查Table的用法,修改上次的代码如下:

程序代码 


代码如下:

TableRow tr;
TableCell tc;
while (dr.Read()) {
tr= new TableRow();
tc = new TableCell();
tc.Text = dr["art_title"].ToString();
tr.Controls.Add(tc);
tc = new TableCell();
tc.Text = dr["art_author"].ToString();
tr.Controls.Add(tc);
Table1.Controls.Add(tr);
}

读取数据的同时,通过TableRow、TableCell生成表格行和单元格。生成网站,执行一下,数据合理的显示到了表格中。

(0)

相关推荐

  • ASP.NET web.config中数据库连接字符串connectionStrings节的配置方法

    在ASP.NET开发的网站根目录,有一个名为web.config的文件,顾名思义,这是为整个网站进行配置的文件,其格式为XML格式.这里主要谈谈文件中的<connectionStrings>节. <connectionStrings>节是对连接到数据库的字符串进行配置,由于MS SQL Server与ASP.NET同属于微软的产品,因此是使用ASP.NET开发时首选的数据库是MS SQL Server,本文只讨论对MS SQL Server的连接字符串情况.第一种情况,本地开发时,

  • 在ASP.NET 2.0中操作数据之六十八:为DataTable添加额外的列

    导言: 当向类型化的数据集(Typed DataSet)添加一个TableAdapter时,相应的DataTable的构架已经由TableAdapter的主查询定义好了.比如,如果主查询返回A, B,C这3个域,那么 DataTable将有对应的3个列A, B,和C.除了主查询以外,TableAdapter还可以包含其他的查询,可能是返回基于某些参数的数据.比如,ProductsTableAdapter的主查询返回所有产品的信息,此外,ProductsTableAdapter还包含诸如GetPr

  • asp.net Accee数据库连接不稳定解决方案

    错误信息如下:写了如下的一个方法来返回数据操作影响的行数:如下 复制代码 代码如下: private int GetReturnValue(string sStr, string conn) { OleDbConnection odbconn = AccessHelp(conn); OleDbCommand odbcmd = new OleDbCommand(sStr, odbconn); return odbcmd.ExecuteNonQuery(); } 用下面的一个方法来调用这个类: 复制

  • 在ASP.NET 2.0中操作数据之七十:配置数据库连接和命令等级设置

    导言: 在本系列我们用类型化的DataSets来构建数据访问层.就像在第一章探讨的那样,类型化DataSets的DataTables用作存储数据的"仓库",而TableAdapters作为连接数据库的通道,以检索.修改数据.TableAdapters 将处理数据库的很多复杂的细节进行了封装,将我们解脱出来,免去了写代码连接数据库.发出命名.向DataTable填充数据的痛苦. 不过在某些时候我们需要深入的探究TableAdapter,直接写代码处理ADO.NET对象.在第61章<

  • asp.net LINQ中数据库连接字符串的问题

    项目我采用了三层结构,我把LINQ的映射文件放到了DAL这个层中,映射文件自动由VS2008生成,在原来的机器上一直正常,一点问题都没有,当我把程序移到了另外一台机子上面时候,情况就发生了变化,怎么都连接不上数据库,这个问题折腾了我好几天,改了DAL下的app.config,也改了Web下的web.config但是都没有效果,一连接数据库就报这个错误 Timeout expired 错误,郁闷好几天,最后从LINQ的映射文件中才发现原来数据库连接字符串一直是调用的Properties下面的Set

  • asp.net程序优化 尽量减少数据库连接操作

    项目以我自己的设计编码完成,并整合测试.初始化数据时,问题出现了.刚开始体现在客户端接受数据很慢.测试环境环境下,数据库服务器部署在国外,网站部署在公司内部,而且我一直认为我的程序在数据库数据处理这里已经做了足够的优化,包括索引和主键已经做到了合理使用.综上所述,起初的速度问题一直没有引起我的关注. 然而最后问题的关键恰恰出在数据库连接查询方面,频繁查询导致数据初始化速度很慢.刚开始我采取的方法是即用即查:需要数据的时候就从数据库查,有比较多的单表查询返回单个字段的情况.假如我有大概3000条左

  • asp.net 数据库连接类代码(SQL)

    复制代码 代码如下: public class SqlOperation { #region 属性 /// <summary> /// 保存在Web.config中的连接字符串 /// </summary> protected static string connectionstring = System.Configuration.ConfigurationManager.ConnectionStrings["hao"].ConnectionString; /

  • ASP.NET2.0 SQL Server数据库连接详解

    Connection类有四种:SqlConnection,OleDbConnection,OdbcConnection和OracleConnection. SqlConnection类的对象连接SQL Server数据库:OracleConnection 类的对象连接Oracle数据库: OleDbConnection类的对象连接支持OLE DB的数据库,如Access:而OdbcConnection类的对象连接任何支持ODBC的数据库.与数据库的所有通讯最终都是通过Connection对象来完

  • asp.net 数据库连接池浅析

    1,对于ASP.NET数据库连接池可以使用一组名称-值对以链接字符串的形式配置链接池.例如,可以配置池是否有效(默认是有效的),池的最大.最小容量,用于打开链接的排队请求被阻断的时间.下面的示例字符串配置了池的最大和最小容量. "Server=(local); Integrated Security=SSPI; Database=Northwind; Max Pool Size=75; Min Pool Size=5" ASP.NET数据库连接池摘要 连接池允许应用程序从连接池中获得一

  • 在ASP.NET 2.0中操作数据之六十九:处理Computed Columns列

    导言: Microsoft SQL Server里有一种computed columns列.这种列的值是通过一个表达式来计算,而表达式引用的是同一张表的其它列的值.打个比方,有一张ServiceLog表,其包含了ServicePerformed, EmployeeID, Rate, Duration等列. 虽然我们可以在一个web页面或其它什么界面里计算每笔服务的费用(也就是 比率 rate乘以时间段duration),不过我们也可以手动向ServiceLog表添加一个 AmountDue列以反

随机推荐