问答题
阅读以下说明,根据要求回答问题。
[说明]
某公司使用ASP开发商务网站,该商务网站具有商品介绍、会员管理、在线支付、物流管理和访客计数器等功能,采用Sqlserver数据库,数据库名为business,其中访客计数器表存储今日访问量、昨日访问量和总访问量等字段,其名称为counter。
问答题
ASP访问数据库一般采用ADO技术,ADO对象主要包含Connection对象、Command对象、Parameter对象、Recordset对象、Field对象和Error对象等。请根据ADO对象问的关系,在图空处填写正确的对象名。
[*]
【正确答案】Connection对象 RecordSet对象 Command对象 Error对象 Parameter对象 Field对象
【答案解析】在ADO.NET对象模型中,Connection对象负责与数据库实际的连接动作,它代表与数据源进行的唯一会话。Command对象负责对数据库提供请求,也就是传递指定的SQL命令。使用command对象可以查询数据库并返回RecordSet对象中的记录,以便执行大量操作或处理数据库结果。
RecordSet对象负责浏览和操作从数据库中取出的数据,对象表示的是来自基本表或命令执行结果的记录全集。任何时候该对象所指的当前记录均为集合内的单个记录,它就像一个二维数组,数组的每一列表示数据库中的一个数据列,而同时每个数据列包含多个字段,每个数据字段就表示一个Field对象。
Error对象是用来判断发生什么错误。该对象提供了一系列的属性和方法,提供这些属性和方法就可以得到各种错误信息。
ADO对象之间的关系如图所示。

问答题
该商务网站的计数器部分代码如下,请根据题目说明,将空缺的代码补充完整。
<%
set conn:server.createobject("adodb.connection")
______.provider="sqloledb"
provstr="server=127.0.0.1; database=______; uid=sa; pwd=9857452"
conn_.open provstr
set rs=conn.Execute("select*from counter")
Conn.Execute"Update counter set counter=counter+1, today=0, statdtm=date(), daynum=daynum+1, yesterday="&rs("today")&""
Conn.Execute"______into yesday(yesday, stats)values('"&yesday&"', "&rs("today")&")"
……
application. ______
if rs("top")<rs("today")then
conn.Execute"Update counter set counter=counter+1, today=today+1, [top]=" & rs("today")&""
elSe
conn.Execute"Update counter set counter=counter+1, today=today+1"
end if
______.unlock
end if
counters=______
today=______
yesterday=rs("yesterday")
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
Document.write('<font style="FONT-SIZE:12px; COLOR:#000000; ">总共访问量: <%=counters%>, 今日访问: <%=today%>, 昨日访问: <%=yesterday%></font>');
【正确答案】conn business Insert lock application rs("counter") rs("today")
【答案解析】依题意,由(7)空缺处上一行程序代码“set conn=server.CreateObiect("adodb.connection")”可知,网站建立了连接对象,并将变量conn初始化为一个Adodb.Connection对象。因此(7)空缺处应填入所创建的实例名conn。
基于题干给出的“数据库名为business”等关键信息,(8)空缺处应填入的数据库名称为business。
(9)空缺处执行的是SQL的插入操作,应填入Insert。
Application对象是所有访问者公用的对象,其存储的信息和定义的事件能够为所有的访问者使用。它是一个应用程序级的对象,其包含的数据可以在整个Web站点中被所有用户使用,而且还可以在网站运行期间持久地保存数据。Application对象经常用于统计网站访问人数。Application对象操作之前先要进行锁定操作,即(10)空缺处应填入lock。与之对应的是,Application对象操作之后要进行解锁操作,即(11)空缺处应填入application。
结合(12)、(13)空缺处下面的程序代码“yesterday=rs("yesterday")”可知,(12)处应从rs记录集中取出counter字段的值,即应填入rs("counter");(13)处应从rs记录集中取出today字段的值,即应填入rs("today")。
问答题
从上述ASP代码可以判断出,计数器表counter中statdtm的字段类型是______,counter的字段类型是______。
【正确答案】3日期型 数值型
【答案解析】基于源程序代码Conn.Execute"Update counter set counter=counter+1, todav=0, statdtm=date(), daynum=daynum+1, yesterday="&rs("today")&"",可以推断出计数器表counter中statdtm的字段类型是日期型,counter的字段类型是数值型。