填空题 一个真正的、完整的站点是离不开数据库的,因为实际应用中,需要保存的数据很多,而且这些数据之间往往还有关联,利用数据库来管理这些数据,可以很方便地进行查询和更新。数据库有很多种,如Fox数据库(.dbf)、Access数据库(.mdb)、Informix、Oracle和SQL Server等等,在这里,以Microsoft Access数据库为例来说明ASP是如何访问数据库的。
常用数据库语句如下所示:
1.SELECT语句:命令数据库引擎从数据库里返回信息,作为一组记录。
2.INSERTINTO语句:添加一个或多个记录至一个表。
3.UPDATE语句:创建更新查询来改变基于特定准则的指定表中的字段值。
4.DELETE语句:创建一个删除查询把记录从FROM子句列出并符合WHERE子句的一个或更多的表中清除。
5.EXECUTE语句:用于激活PROCEDURE(过程)
用ASP来做一个通讯录:
1.建立数据库
用Microsoft Access建立一个名为data.mdb的空数据库,使用设计器创建一个新表。
输入以下几个字段,见表1。
表1 data mdb的字段和属性
字段名称
数据类型
说明
其他
ID
自动编号
数据标识
字段大小:长整型 新值:递增 索引:有(无重复)
uesrname
文本
姓名
缺省值
usermail
文本
E-mail
缺省值
view
数字
查看次数
字段大小:长整型 默认值:0索引:无
Indate
时间日期
加入时间
缺省值
保存为data.mdb文件
2.连接数据库
Setconn= (1)
coop,Open" driver=Microsoft Access Driver(*.mdb);dbq="&Server,MapPath("data.
mdb&)
conn.Close
Ser conn:Nothing
3.添加新记录到数据库
Setcorm=Server.Create Object("ADODB.Connection")
conn.Open "driver=Microsoft Access Driver(*,mdb);dbq="&Server .Map Path("data.mdb")
username="程序员"
usermail="xj@163.com"
indat=Now()
Sql="insert into data(username,usermail,indata)Values("&username&","&usermai,a","&indate&")"
(2)
conn.Close
Set conn=Nothing
4.选择数据库里的记录
1)选择所有记录的字段(按记录倒序排序): (3)
2)选择所有记录的姓名和E-mail字段(不排序):sql="select username,usermail from data"。
3)选择姓名为“程序员”的所有记录: (4)
4)选择使用163信箱的所有记录(按查看次数排序):sql="select .from data where user- mail like%"@163.com"%orderbY view desc"。
5)选择最新的10个记录:sql="selecttop 10*from data order by ID desc"。
SQL语句已经知道了,不过在Web应用时,还得创建一个Record Set对象得到记录集,才能把从数据库里取出的值应用在网页上,如果现在将所有的记录显示在网页上就使用如下代码:
Setconn=Server.Create Object("ADODB.Connection")
conn.Open" driver=Microsoft Access Driver(*.mdb);dbq="&Server .Map Path("data.mdb")
SqI="select*from data"
Set rs=Server. Create Object("ADODB. Record Set")
rs. Open sql,corm,1,1
Do While Not rs.Eof
Response.Write"

姓名:"&rs("username")&,E-maih:"& rs("usermail")&,查看:"&rs(" view")& "次"&rS("indate")&,"加入

"
Rs .Move Next
Loop
rs,close
Set rs=Nothing
conn.Close
Set conn=Nothing
说明:建立数据库连接;创建rs得到记录集;循环显示记录,rs.Eof表示记录末,rs.Mov- eNext表示移到下一个记录;最后关闭。
5.修改(更新)数据库记录
修改记录的E-mail:
Setconn=Server.Create Object("ADOD B. Connection")
cons.Open" driver=Microsoft Access Driver(*.mdb);dbq="& Server .Map Path("data.mdb")
ID=1
usermail=xj@163.com"
sql="update data setusermail="&usermail &"where ID="&CInt(ID)
conn. Execute(sql)
conn. Close
Set com=Nothing
说明:建立数据库连接;获取记录ID、新E-mail字符串;使用update语句修改记录;conn Execute来执行;最后关闭。如果使记录的查看值加1,则sql="update data set view=view+1 where ID="&CInt(ID)
6.删除数据库汜录
删除某一条记录:
Setconn= Server. Create Object("ADODB .Connection")
corm.Open "driver=Microsoft Access Driver(*.mdb)=dbq "&Server,Map Path("data.mdb")
ID=1
sql= (5)
com .Execute(sql)
com. Close
Set com=Nothing

  • 1、
【正确答案】 1、{{*HTML*}}Server.Create Objeot("ADODB.Connection") (2) conn.Execute(sql)
说明:建立数据库连接;通过表单获取姓名、E-mail字符串,Now()获取当前时间日期;使用Insert into语句添加新记录;使用conn.Execute来执行;最后关闭。
(3)sql="select*from data order by ID dese"
(4)sql;”select*from data wheren semame=""程序员""
(5)"delete from data where ID="&CInt(ID)
说明:建立数据库连接;获取记录ID;使用delete语句删除记录;使用eonn.Execute来执行;最后关闭。
删除多条记录为:sql="delete from data where ID in(ID1,ID2, ID3)"。
删除所有记录为:sql="delete from data"。    
【答案解析】