学习ASP.NET八天入门:第四天
来源:cnplayer.com 发布时间:2007-08-07 13:40:00
标签:ASP.net,入门,ADO.NET用法
学习目的:
学习ADO.NET用法,并如何用DataRearder读取数据
今天练习数据库的最基本用法,如何打开数据库。首先在网站设置文件web.config文件的<configuration>下方加入以下节点:<configuration>
<appSettings>
<add key="数据库1" value="ex01.mdb" />
</appSettings>
该节点设置了数据库的路径,这样就可以很方便的调用数据库文件了,调用方法为:
Server.MapPath(ConfigurationSettings.AppSettings["数据库1"])
这是ASP.NET程序的通用方法,以后介绍的SQL SERVER数据库也是在此设置的。
好开始做程序,首先在CS文件的头部加入:using System.Configuration;
using System.Data.OleDb;
using System.Text;
以下在Page的Load事件中,读取ACCESS数据库,并用表格显示出来:
显示结果private void Page_Load(object sender, System.EventArgs e)
{
StringBuilder sbTable = new StringBuilder(); // 用于输出表格的语句
string strConnection = "Provider=Microsoft.Jet.Oledb.4.0;Data Source="
+ Server.MapPath(ConfigurationSettings.AppSettings["数据库1"]);
// 连接数据库的语句
OleDbConnection conn = new OleDbConnection(strConnection);
// 建立DbCommand对象
OleDbCommand cmd = conn.CreateCommand();
cmd.CommandText = "SELECT * FROM Book";
// 打开数据库
conn.Open();
// 用DataReader读取数据
OleDbDataReader dr = cmd.ExecuteReader();
sbTable.Append("<table cellSpacing="0" cellPadding="0" border="1"><tr>");
sbTable.Append("<td>书名</td><td>作者</td><td>单价<td></tr>");
while (dr.Read())
{
sbTable.Append("<tr><td>");
sbTable.Append(dr["BookTitle"].ToString());
sbTable.Append("</td><td>");
sbTable.Append(dr["Author"].ToString());
sbTable.Append("</td><td>");
sbTable.Append(dr["UnitPrice"].ToString());
sbTable.Append("</td><tr>");
}
sbTable.Append("</tr></table>");
// 记住dr用毕必须关闭,否则会阻塞服务器
dr.Close();
// DbConnection是受托管的,可以不关闭
// 但为良好的编程习惯,应该关闭
conn.Close();
Response.Write(sbTable.ToString());
}
图片如下:
相关阅读:


猜你喜欢
- python下读取公私钥做加解密实例详解在RSA有一种应用模式是公钥加密,私钥解密(另一种是私钥签名,公钥验签)。下面是Python下的应用
- python修改FTP服务器上的文件名,具体代码如下所示:#-*- coding:utf-8 -*-#修改ftp服务器上的文件名from f
- 前言:open()函数的定义:def open(file, mode='r', buffering=None, encodi
- Table:用于标示删除的数据表的名称。 1:该表必须是一个事实存在的表,对于该处的表必须是一个实际存在于数据库中的表格,必能是由于sele
- 当你在浏览网页时,看到一个很漂亮的特效,你查看源代码时看到的是一队乱码,那多扫兴呀!根据本人的研究,总结出了三种解密方法,与大家分享!!方法
- 在《多线程与同步》中介绍了多线程及存在的问题,而通过使用多进程而非线程可有效地绕过全局解释器锁。 因此,通过multiprocessing模
- Pytest-sugar是一款用来改善控制台显示的插件,增加了进度条显示,使得在用例执行过程中可以看到进度条,而且进度条是根据用例是否通过标
- 本文实例讲述了Go语言图片处理和生成缩略图的方法。分享给大家供大家参考。具体实现方法如下:package mainimport ( 
- 背景最近用uni-app开发小程序项目时,部分需要持久化的内容没法像其他vuex中的state那样调用,所以想着自己实现一下类似vuex-p
- 1、运用re、json、jsonpath包解析json思路(1)re:正则表达式,通过json的形式对症下药,写表达式去解析json;(2)
- MySQL去重的方法整理【初级】有极少的重复行使用distinct查出来,然后手动一行一行删除。【中级】按照单个字段的重复去重例如:对id字
- 我们可以利用Session对象来进行注册验证。Session对象会帮我们把某一用户的信息保留下来,让后续的网页读取。我们就可以在用户注册成功
- 前面我们讲了 TCP 编程,我们知道 TCP 可以建立可靠连接,并且通信双方都可以以流的形式发送数据。本文我们再来介绍另一个常用的协议–UD
- 有关JS中字符串的相关文章,现在网上大概不计其数了。这里我不想再就这个问题做过多的论述,只是对几种方式的实现在各种浏览器中的执行效率进行对比
- 上篇博客转载了关于感知器的用法,遂这篇做个大概总结,并实现一个简单的感知器,也为了加深自己的理解。感知器是最简单的神经网络,只有一层。感知器
- python3字符串操作 x = 'abc' y = 'defgh' print(x + y)
- 一:最近,经常碰到有网友问,如何使vbscript和javascipt传递变量。不知道为什么要这么做。因为每一种脚本语言几乎都可以完成所需要
- 本文实例讲述了python实现多进程按序号批量修改文件名的方法。分享给大家供大家参考,具体如下:说明文件名命名方式如图,是数字序号开头,但是
- logging分为4个模块: loggers, handlers, filters, and formatters.●loggers: 提供
- 使用场景:按文件名字正序,批量执行某文件夹下的所有sql文件,并输出日志适合人群:实施工程师一、使用篇1、准备bat文件:1.1、ExecS