免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2094 | 回复: 0
打印 上一主题 下一主题

数据库的应用 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-11-14 16:24 |只看该作者 |倒序浏览
大家好!我是北大青鸟的学生,很高兴能够来到这里,和大家一起来分享,数据库的知识!
ASP与数据库应用(给初学者)
--------------------
见最近许多网友询问一些关于数据库操作的基础问题,现把我以前写的一篇简单教程贴上来,好让一些初学者最快的入门:

ASP与数据库应用(给初学者)

一般来说,一个真正的、完整的站点是离不开数据库的,因为实际应用中,需要保存的数据很多,而且这些数据之间往往还有关联,利用数据库来管理这些数据,可以很方便的查询和更新。数据库有很多种,如:Fox 数据库(.dbf)、Access 数据库(.mdb)、Informix、Oracle 和 SQL Server 等等,在这里,我将以 Microsoft Access 数据库为例来说明ASP是如何访问数据库的。

常用数据库语句

1.Select 语句:命令数据库引擎从数据库里返回信息,作为一组记录。
2.Insert INTO 语句:添加一个或多个记录至一个表。
3.Update 语句:创建更新查询来改变基于特定准则的指定表中的字段值。
4.Delete 语句:创建一个删除查询把记录从 FROM 子句列出并符合 Where 子句的一个或更多的表中清除。
5.EXECUTE 语句:用于激活 PROCEDURE(过程)

用 ASP 来做一个自己的通讯录练练手吧……

一、建立数据库:

用 Microsoft Access 建立一个名为 data.mdb 的空数据库,使用设计器创建一个新表。输入以下几个字段:

字段名称 数据类型 说明 其它
ID 自动编号 数据标识 字段大小:长整型 新值:递增 索引:有(无重复)
username 文本 姓名 缺省值
usermail 文本 E-mail 缺省值
view 数字 查看次数 字段大小:长整型 默认值:0 索引:无
indate 时间日期 加入时间 缺省值

保存为 data.mdb 文件,为了便于说明,只是做了一个比较简单的库。

二、连接数据库

方法1:
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")

方法2:
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("data.mdb")

注意:一个页面中,只要连接一次就可以了,数据库使用完后要及时关闭连接。
conn.Close
Set conn = Nothing

三、添加新记录到数据库

Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")

username = "风云突变"
usermail = "fytb@163.com"
indate = Now()

sql = "insert into data (username,usermail,indata) values('"&username&"','"&usermail&"','"&indate&"')"
conn.Execute(sql)

conn.Close
Set conn = Nothing

说明:建立数据库连接;通过表单获取姓名、E-mail 字符串,Now()获取当前时间日期;使用 insert into 语句添加新记录;conn.Execute 来执行;最后关闭。

四、选择数据库里的记录

1.选择所有记录的字段(按记录倒序排序):sql = "select * from data order by ID desc"
2.选择所有记录的姓名和E-mail字段(不排序):sql = "select username,usermail from data"
3.选择姓名为“风云突变”的所有记录:sql = "select * from data where username='"风云突变"'"
4.选择使用 163 信箱的所有记录(按查看次数排序):sql = "select * from data where usermail like '%"@163.com"%' order by view desc"
5.选择最新的10个记录:sql = "select top 10 * from data order by ID desc"

SQL 语句已经知道了,不过在Web应用时,还得创建一个 RecordSet 对象得到记录集,才能把从数据库里取出的值应用在网页上,如果现在将所有的记录显示在网页上就这样:

Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")

sql = "select * from data"
Set rs = Server.CreateObject("ADODB.RecordSet")
rs.Open sql,conn,1,1

Do While Not rs.Eof
Response.Write "<p>姓名:"& rs("username") &" E-mail:"& rs("usermail") &" 查看:"& rs("view") &"次 "& rs("indate") &"加入</p>"
rs.MoveNext
Loop

rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
参考资料:www.gobenet.net.cn
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP