ASP动态网站开发教程(第二版)习题答案
第1章 答案:
1.11.1 填空题
1.超文本标记语言
2.<Html></Html>
3.像素
4. <Body Bgcolor=> <Body text=>
5.. Action Method
6. name value
1.11.2 选择题
1.C
2. A
3.D
4.B
5.B
6.B
1.11.3 上机操作
1.
<title> 古诗两首</title>
<p align="center"><Font Face="隶书" color="gray" size=8>李白诗两首<br></p>
<table width="80%" border="5" align="center" bordercolorlight="#CF0000" bordercolordark="#FF0000">
<tr>
<td>
<h4 align="center">黄鹤楼送孟浩然之广陵</h4>
<Font Face="隶书">
<p>故人西辞黄鹤楼,</p>
<p>烟花三月下扬州。</p>
<p>孤帆远影碧空尽,</p>
<p>唯见长江天际流。</p>
</Font>
</td>
<td>
<h4 align="center">下江陵</h4>
<Font Face="隶书">
<p>朝辞白帝彩云间,</p>
<p>千里江陵一日还。</p>
<p>两岸猿声啼不住,</p>
<p>轻舟已过万重山。</p>
</Font>
</td>
</tr>
</table>
2.
<HTML>
<HEAD>
<TITLE>表单练习</TITLE>
</head>
<body>
<table width=80% border=0 align=center cellspacing=0 cellpadding=0>
<tr>
<td height=20 colspan=3> <br>
请填写个人资料:(注意带有<font color=ffffff><font color=D11B00>*</font></font>的项目必须填写)</td>
</tr>
</table>
<table border=0 cellspacing=1 width=80% align=center>
<form method=POST action="/Register2.jsp" name=form onSubmit="return checkdata()">
<input type=hidden name=username value="hts-jj">
<input type=hidden name=url value="">
<input type=hidden name=time value="">
<tr>
<td class=p2 align=right><font color=D11B00>*</font> 密码</td>
<td class=p2 align=right rowspan=17> </td>
<td bgcolor=E5E6D3><font size=2> </font><b>
<input name=password size=25 type=password maxlength=14>
</b></td>
<td class=p2 bgcolor=E5E6D3 nowrap>密码可使用长度为6-14的任何字符</td>
</tr>
<tr>
<td class=p2 align=right><font color=D11B00>*</font> 密码确认</td>
<td bgcolor=E5E6D3><font size=2> </font><b>
<input name=confirmPassword size=25 type=password maxlength=14>
</b></td>
<td class=p2 bgcolor=E5E6D3>请再输入一次密码</td>
</tr>
<tr>
<td class=p2 align=right><font color=D11B00>*</font> 密码提示</td>
<td bgcolor=E5E6D3>
<font size=2> </font><input type=text name=question size=25 maxlength=36>
</td>
<td class=p2 rowspan=2 bgcolor=E5E6D3>例如:我的哥哥是谁?
<br>当您忘记密码时可以通过密码提示问题和答案找回密码
<br><font color=D11B00>注意:</font>答案长度不少于<font color=D11B00>6</font>位</td>
</tr>
<tr>
<td class=p2 align=right><font color=D11B00>*</font> 提示答案</td>
<td bgcolor=E5E6D3>
<font size=2> </font><input type=text name=answer size=25 maxlength=30>
</td>
</tr>
<tr>
<td class=p2 align=right><font color=D11B00>*</font> 出生日期</td>
<td class=p1 bgcolor=E5E6D3>
<font size=2> </font><input type=text name=year size=5 value=19 maxlength=4>
年
<select name=month class=p1>
<option value=01 selected>01</option>
<option value=02>02</option>
…………
<option value=12>12</option>
</select>
月
<input type=text name=day size=2 maxlength=2></td>
<td class=p2 bgcolor=E5E6D3>用以找回密码,请如实填写</td>
</tr>
<tr>
<td class=p2 width=25% align=right><font color=D11B00>*</font> 姓名</td>
<td class=p2 width=35% bgcolor=E5E6D3>
<font size=2> </font><input type=text name=fullname size=25 maxlength=20>
</td>
<td class=p2 width=40% bgcolor=E5E6D3>请输入真实的姓名</td>
</tr>
<tr>
<td class=p2 align=right><font color=D11B00>*</font> 性别</td>
<td class=p1 bgcolor=E5E6D3>
<font size=2> </font><input name=gender type=radio value=0>
男
<input name=gender type=radio value=1>
女 </td>
<td class=p2 bgcolor=E5E6D3></td>
</tr>
<tr>
<td class=p2 align=right><font color=D11B00>*</font> 所在省份</td>
<td class=p1 bgcolor=E5E6D3>
<font size=2> </font><select name=province size=1 class=p1>
<option value="">请选择 </option>
<option value="北京">北京</option>
<option value="辽宁">辽宁</option>
<option value="广东">广东</option>
…………
<option value="其它">其它</option>
</select>
</td>
<td class=p1 valign=top bgcolor=E5E6D3></td>
</tr>
<tr>
<td class=p2 align=right><font color=D11B00>*</font> 所属行业</td>
<td class=p1 bgcolor=E5E6D3>
<font size=2> </font><select name=industry class=p1>
<option value="">请选择 </option>
<option value="金融业">金融业</option>
<option value="服务业">服务业</option>
<option value="信息产业">信息产业</option>
…………
<option value="其它">其它</option>
</select>
</td>
<td class=p1 valign=top bgcolor=E5E6D3></td>
</tr>
<tr>
<td class=p2><br>
<b><font color=FF0000>个人声明</font></b></td>
</tr>
<tr>
<td colspan=4 class=p1><font color=red> <font color=000000>我愿意公开我的如下资料:
<input type=checkbox name="yes2" checked>
姓名,联系方式
<input type=checkbox name="yes3">
其他已登记的信息</font><br>
<br>
</font> </td>
</tr>
</table>
<table width=750 border=0 algin=center align=center>
<tr>
<td>
<hr align=center noshade width=100% color=black>
</td>
</tr>
<tr>
<td align=center><font size=2>
<input type="submit" name="Submit3" value=" 确 认 " style="cursor:hand;">
<input type="reset" value=" 重 填 " name="reset" style="cursor:hand;">
</font></td>
</tr>
</form>
</table>
<br>
<script language="JavaScript" src="/nnselect.js">
</script>
<noscript>
<img src='http://ping.nnselect.com/ping.gif?c=135' height='1' width='1'>
</noscript>
</body>
</html>
第2章 答案:
2.4.1 填空题
1. VBScript,JScript
2. 服务器端
3. TCP端口
4. asp
5. <%和%>
2.4.2 选择题
1.D
2. D
3. A
2.4.3 问答题
1. 答:ASP有以下优点:首先,ASP是微软的产品,和现在普遍使用的Windows操作系统以及IE浏览器很容易相容。
其次,ASP所使用的VBScript脚本语言直接来源于VB语言,而VB语言本身就是一个非常简单易学的语言。并且它的运行环境的安装以及ASP文件的开发环境也很简单。因此,非常适合于新手学习,能够让读者在最短的时间内迅速领会到动态网页的美妙。
最后,目前ASP发展成熟,网上各种资源也很多,可以更方便的查找资料以及与他人交流。
2. 答:其工作的流程如下:
(1) 第一步服务器会读取ASP页面内容,判断是否有ASP服务器端的代码需要执行。判断的方法有两种,一种是查看语句中的ASP的特有<% %>脚本标记;第二种是查看是否被指定要运行在服务器端,如:<script runat="server">。
(2) 假如有要运行的ASP代码,ASP会将这些代码挑出来逐行进行解释。假如没有要运行的ASP代码,它仅是简单地通知IIS这种情况。
(3) ASP运行解释后,将把结果返回给IIS。对于那些非服务器端的脚本,或不需要ASP进行服务器处理的,将被返回给IIS。脚本输出与静态HTML代码会进行合并,形成一个最终的网页页面。
(4) IIS把网页发送给客户端浏览器上。
3. 答:从“开始”|“设置”|“控制面板”,打开“控制面板”对话框,双击“添加删除程序”按钮,进行IIS组件的安装设定,打开“Windows组件向导”对话框,选中“Internet信息服务(IIS)”选项,开始安装IIS。
4. 答:在“默认网站属性”对话框中,单击“文档”标签,打开“文档”选项卡,其中第一个框架便是浏览器默认浏览的网页依据,选中 “启用默认文档”复选框,设置使用浏览器浏览网站的时候,IIS所要回传的默认文件。
2.4.4 上机操作
1.
2.
<%@ LANGUAGE = VBScript %>
<Html>
<Title>
Hello World
</Title>
<Body>
<%
'以下循环输出Hello World字符串,字体由小变大
For i=1 to 5
Response.write "<font size=" & 6-i & ">hello world</font><br>"
Next
%>
</Body>
</Html>
第3章 答案:
3.6.1 填空题
1. <%@ Language=VBScript %>
2. Variant
3. 连接运算符; 关系运算符
4. 常量
5. 逗号
6. 下标
3.6.2 选择题
1. A
2. A
3. D
3.6.3 问答题
1. 答:通常使用的方法有三种:首先,ASP可通过IIS指定一个默认脚本语言,只要是<%和%>之间的代码ASP在解释时会认为它使用的是默认脚本语言。第二种方法是直接在asp文件中加以声明。第三种在ASP中对Script脚本的选择方法是利用HTML语言的<Script>拓展对象,即在<Script>中加入所需的语言。
2. 答:当一个表达式包含有多个运算符时,执行运算的符号有一个固定的优先计算顺序,如下面所示:
算术运算符>连接运算符>比较运算符>逻辑运算符
在同一类运算符中,应该从左到右的顺序进行计算。在表达式中,可以使用括号改变计算的优先顺序,强令表达式的某些部分优先运算。括号内的运算总是优先于括号外的运算。
3. 答:变量的作用域由声明它的位置决定。如果在过程中声明变量,则只有该过程中的代码可访问或更改变量值。此时变量具有局部作用域并被称为过程级变量。如果在过程之外声明变量,则该变量可以被脚本中所有过程所识别,称为脚本级变量,具有脚本级作用域。
3.6.4 上机操作
1.
<%
Dim intNum,i,intSum
intNum=1
intSum=0
For I=11 To 23 Step 1
Response.Write "循环语句正在执行第"&intNum&"遍循环"&"<br>"
Response.Write "第"&intNum&"个欲相加的为"&i&"的平方"&i^2&"<br>"
Response.Write "SUM="&intSum&"+"&i^2&"="&intSum+i^2&"<br>"
intSum=intSum+i^2
intNum=intNum+1
Next
%>
2.
<Script Language="VBScript" >
n=InputBox ("请输入N的值:")
m=InputBox ("请输入m的值:")
MsgBox "表达式(n-1)!+(m+1)!/(n+m)!的计算结果为 " &jc(n-1)+jc(m+1)/jc(n+m)
Function jc(intNum)
j=1
for i=1 to intNum
j=j*i
next
jc=j
End Function
</Script>
第4章 答案:
答案:
4.5.1 填空题
1. Request Response
2. Form Cookies
3. GET
4. Redirect
5. Buffer
4.5.2 选择题
1.C
2. D
3. A
4.5.3 问答题
1. 答:在面向对象编程中,对象就是指由当作完整实体的操作和数据组成的变量。在对象中客户可通过由一组方法或相关函数来访问对象的数据,然后客户端可以调用这些方法执行某种操作。对象一般有方法、属性、集合和事件。其中方法决定了可以用这个对象作什么事情。属性可以读取出来了解对象状态或者设置对象状态。对象的集合是由很多不同的和对象有关系的键和值的配对组成的。
2. 答:在ASP中,与客户端的动态交互是通过Request和Response对象实现的,它们连接了服务器与客户机的之间的信息传递。
Request对象用于接收客户端浏览器提交的数据,而Response对象的功能则是将服务器端的数据发送到客户端浏览器。这两个对象的功能是对立的,它们结合在一起,便可实现客户端Web页面与服务器端.asp文件之间的数据交换。
3. 答:Cookie是Web服务器嵌入客户机中以标识用户的标记,它是服务器或脚本可以维护用户信息的一种方式。
当用户访问一个Web站点时,Web服务器可以在用户的计算机上建立一个Cookie文件,里面包含用户的有关信息,如身份识别号码、密码、用户在Web 站点上购物的方式或用户访问该站点的次数。以后,无论何时用户连接到服务器,Web站点服务器都可以访问这个cookie文件,查询和修改其中的信息。
4.5.4 上机操作
1.建立一个ASP文件,名称为order.asp,代码如下:
<%@ Language=VBScript %>
<HTML>
<TITLE>
订购水果
</TITLE>
<BODY>
请选择你所要订购的水果
<hr>
<FORM ACTION="order.asp">
<input name="fruit" type=checkbox value="苹果">苹果
<Br>
<input name="fruit" type=checkbox value="香蕉">香蕉
<Br>
<input name="fruit" type=checkbox value="菠萝">菠萝
<Br>
<input name="fruit" type=checkbox value="桔子">桔子
<input type=submit value="订购">
</FORM>
<hr>
<%
if Request.QueryString("fruit").Count=0 then
%>
你没有订购水果
<%else%>
你订购了
<%
for each fruit in Request.QueryString("fruit")
response.write "<br><font color=green>" & fruit & "</font>"
next
end if
%>
</BODY>
</HTML>
2.建立一个ASP文件,名称为LastVisit.asp,代码如下:
<%@ LANGUAGE = VBScript %>
<% Option Explicit %>
<%
'Cookies通过HTTP Headers来从服务器端返回到浏览器上.
'在发送Cookies之前,不能向浏览器端发送任何数据.
Response.Expires = 0
'从Cookie中取出上一次访问的日期和时间
Dim LastVisit
LastVisit = Request.Cookies("LastVisitCookie")
Response.Cookies("LastVisitCookie") = FormatDateTime(NOW)
%>
<HTML>
<HEAD>
<TITLE>上次访问时间</TITLE>
</HEAD>
<BODY BGCOLOR="White" TOPMARGIN="10" LEFTMARGIN="10">
<FONT SIZE="4" FACE="ARIAL, HELVETICA">
<B>使用Cookies</B></FONT><BR>
<HR SIZE="1" COLOR="#000000">
<%
If (LastVisit = "") Then
'如果Cookie从未被写过,则用户是第一次访问本页
Response.Write("欢迎光临本页")
Else
'显示上一次访问日期及时间
Response.Write("你上一次访问本页在" + LastVisit)
End If
%>
<P><A HREF="LastVisit.asp">重新访问本页</A>
</BODY>
</HTML>
第5章 答案:
5.5.1 填空题
1. Request Respone Session Application Server
2. Contents
3. Lock UnLock
4. 20
5. Abandon
6. HTMLEncode
7. Global.asa
5.5.2 选择题
1. D
2. C
3. C
5.5.3 问答题
1. 答:Session与Application对象除了应用范围不同之外,在观念、相关方法以及事件的处理机制均相同。Session对象用于记载单个客户的信息,Web服务器为每个访问者建立一个单独的Session,比如Session对象可记载该客户的用户名称及个人爱好等。
而Application对象则可以记载所有的客户信息,比如Application对象也应用于聊天室,大家的发言都可以存放到一个Application对象中,彼此可以看到所有的发言内容了。不同的客户必须访问属于自己的Session对象,但可以访问公共的Application对象。
2. 答:使用Response.Redirect方法时重定向操作的整个过程中,客户端与服务器要进行两次来回的通信。第一次通信是对原始页面的请求,得到一个目标己经改变的应答,第二次通信是请求Response.Redirect指向的新页面,得到重定向之后的页面。
而使用Server.Transfer方法时,客户端与服务器只需进行一次通信。它将终止执行当前的ASP页面,执行流程转入另一个ASP页面,但新的ASP页面仍使用前一ASP页面创建的通信。Transfer方法需要的网络通信量较小,从而可获得更好的性能和浏览效果。
3. 答:ASP对使用Global.asa文件有以下几条要求:
每一个应用程序可能由很多文件或文件夹组成,但只能有一个Global.asa文件,而且文件名称必须叫Global.asa。
必须存放在应用程序的根目录中。
Global.asa文件不能写成<%……%>的形式,如果包含的脚本没有用<SCRIPT>标记封装,或定义的对象没有会话或应用程序作用域,则服务器将返回错误。服务器会忽略已标记的但未被应用程序或会话事件使用的脚本以及文件中的HTML语句。
在Global.asa文件中不能包含任何输出语句,比如Response.Write。因为Global.asa文件只是被调用,而不会显示在页面上,所以不能输出任何显示内容。
5.5.4 上机操作
1.
<%@ LANGUAGE = VBScript %>
<% Option Explicit %>
<SCRIPT LANGUAGE = VBScript>
Sub showsessionID()
MsgBox "你的SessionID是:" & <%= Session.SessionID %>
End Sub
</SCRIPT>
<HTML>
<HEAD>
<TITLE>显示SessionID</TITLE>
</HEAD>
<BODY BGCOLOR="White" TOPMARGIN="10" LEFTMARGIN="10">
<!-- Display header. -->
<B>本实例显示SessionID</B><P>
<INPUT TYPE=Button VALUE="单击此处" ONCLICK=showsessionID>
</BODY>
</HTML>
2.
Global.asa文件代码:
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
Sub Application_onStart
Application("OnLine") = 0
End Sub
Sub Session_onStart
Application.Lock
Application("OnLine") = Application("OnLine") + 1
Application.Unlock
End Sub
Sub Session_OnEnd
Application.Lock
Application("OnLine") = Application("OnLine") - 1
Application.Unlock
End Sub
</SCRIPT>
显示人数的页面代码:
<%@language=VBscript%>
<Html>
<head>
<title>
显示在线人数
</title>
</head>
<body>
<center>
欢迎光临本网站,当前共有<%=Application("OnLine")%>人在线
</center>
</body>
第6章 答案:
6.13.1 填空题
1. Ad Rotator
2. 重定向
3. Content Rotator
4. TAB
5. Browr Capabilities Permission Checker
6. Item
6.13.2 问答题
1. 答:ASP自带有几个基本组件,如ActiveX Data Objects(ADO)和Ad Rotator等。直接使用这些组件可以高效地完成各种复杂的功能,如数据库访问、广告旋转、文件读取和电子邮件发送等。
网站的开发者还可从第三方开发商购买一些己制作完成的组件,直接运用它们来完成各种各样的任务。此外,还可用任何支持组件对象模型(COM:Component Object Model)的编程语言(如Visual C、Java、Visual Basic或大量脚本语言)来编写自己的组件。组件是可以重复使用的,在Web服务器上安装组件后,就可以从ASP脚本、ISAPI应用程序、服务器上的其他组件或另一种COM兼容语言编写的程序中调用该组件。
2. 答:要使用Ad Rotator组件的效果,需要用到3个文件。AD Rotator计划文件记录所有广告信息;重定向文件对单击广告条的事件进行处理;广告显示页面则建立和显示广告条。
3. 答:Browr Capabilities组件的工作原理如下:当客户端浏览器向服务器发送页面请求时,同时会自动发送一个User Agent HTTP标题,而该标题是一个声明浏览器及其版本的ASCII字符串。而Browser Capabilities组件就将User Agent映射到在文件Browscap.ini中所注明的浏览器,并通过BrowserType对象的属性来识别客户浏览器。
6.13.3 上机操作
1.
<Html><Body>
<Center><H1>笑傲江湖</H1></Center>
<Hr>
<%Set Nextlink=Server.CreateObject("MSWC.NextLink")
count = NextLink.GetListCount("list.txt")
%>
<Form Action="6-习题一2.asp">
<Select Name="num" Method="get">
<Option Selected Value="">选择一个主题……
<%
For i=1 To count
%>
<Option value=<%=NextLink.GetNthUrl("list.txt",i)%>>
<%
desc=NextLink.GetNthDescription("list.txt",i)
%>
<%=desc%>
<%Next%>
</Select>
<Input Value="你要跳转到哪一章" Type=Submit>
</Form>
<Hr>
<%
'调用Server.Execute方法将当前章的内容包含进来
Server.Execute request.querystring("num")
%>
2.
<Title>字典查询</Title>
<H3>查询字典内容</H3>
<Form Action="<%=Request.ServerVariables("Script_Name")%>">
<Input Type="Text" Name="SearchKey">
<Input Type="Submit">
</Form>
<Hr>
<%
Dim strSearchKey
strSearchKey=Trim(Request.QueryString("SearchKey"))
If Len(strSearchKey)>0 Then
If IsEmpty(Session("MyDict")) Then
Response.Write "字典是空的!"
Else
Set myLocalDict=Session("MyDict")
If Not myLocalDict.Exists(strSearchKey) Then
Response.Write "没有找到键值"&strSearchKey&"<Br>"
Else
Response.Write "找到了,"&strSearchKey&"的全称是:"
Response.Write myLocalDict.item(strSearchKey)&"<Br>"
End If
End If
End If
%>
第7章 答案:
7.6.1 填空题
1.驱动器 文件夹
2.Server.CreatObject
3.WriteLine
7.6.2 选择题
1.B
2.A
3.D
7.6.3 简答题
1.
答:File Access组件提供可用于在计算机文件系统中检索和修改文件的对象。用户可以使用File Access组件创建File System Object对象,FileSystemObject对象简称为FSO。FSO提供用于访问文件系统的方法、属性和集合。
FSO组件可以用来对驱动器、文件夹以及文件等对象进行相关的处理操作。它可以检测并显示出系统驱动器的信息分配情况;还能够创建、改变、移动和删除文件夹,并能探测一些给定的文件夹是否存在;提取出文件夹的信息,如名称、被创建或最后一次修改的日期,等等。
2…
文本文件一经创建,就可以分三步向其中加入数据:①打开文件以备写入数据;②写入数据;③关闭文件。打开文件的方法有两种,第一种是用File对象的OpenAsTextStream方法,第二种是用FileSystemObject对象的OpenTextFile方法。
7.6.4 上机操作
1.
<%
Dim Fso,f1
WebRoot=Server.MapPath("/") '得到Web站点的根目录
Set fso = CreateObject("Scripting.FileSystemObject")
Set f1 = fso.GetFolder(WebRoot)
Response.Write "<Center><H4>站点根目录中的子文件夹列表如下:
</H4></Center><Hr>"
For Each Item In f1.SubFolders
Response.Write Item&"<Br>"
Next
Response.Write "<Center><H4>站点根目录中的文件列表如下:
</H4></Center><Hr>"
For Each Item In f1.Files
Response.Write Item&"<Br>"
Next
%>
2
(1) 在根目录建立一个文本文件,并起名为addline.txt。
(2) 编写下面的ASP程序,并运行。
<%
If not request.Form("NextLine")="" then
Set fso=Server.CreateObject("Scripting.FileSystemobject")
textfile1=Server.MapPath("addline.txt")
set cnrs=fso.OpenTextFile(textfile1,8)
' cnrs.WriteLine(Request.Form("NextLine"))
cnrs.Close
end if
%>
<Br>
<Center><H4>每个人写一句让你感动的英文句子:</H4></Center>
<Hr>
<%
Set fso=CreateObject("Scripting.FileSystemObject")
textfile1=Server.MapPath("addline.txt")
Set cnrs=fso.OpenTextFile(textfile1,1)
While Not cnrs.AtEndOfStream
Response.Write " " & cnrs.ReadLine&"<Br>"
wend
cnrs.close
%>
<Hr>
<Form method="post" Action=<%=Request.ServerVariables("Script_Name")%>>
你一言,我一语:<Input Name="NextLine" Type="text" size="70">
<Input Type="submit" Value="提交">
</Form>
第8章 答案:
8.4.1 填空题
1. 记录,字段
2. 主健(主索引),一般性索引
3. FROM子句
4. CreateObject
8.4.2 问答题
1. 答:OLE DB分成两部分,一部分由数据提供者实现,包括一些基本功能,如获取数据、修改数据、添加数据项等;另一部分由系统提供,包括一些高级服务,如游标功能、分布式查询等等。这样的层次结构既为数据使用者即应用程序提供了多种选择方案,又为数据提供方简化了服务功能的实现手段,它只需按OLE DB规范编写一个COM组件程序即可,使得第三方发布数据更为简便。而在应用程序方可以得到全面的功能服务,这充分体现了OLE DB两层结构的优势。
2. 答:在ADO模型中,主体对象只有3个:Connection、Command和Recordset,一个典型的ADO应用使用Connection对象建立与数据源的连接,然后用一个Command对象给出对数据库操作的命令,比如查询或者更新数据等,而Recordset 用于对结果集数据进行维护或者浏览等操作。其他4个集合对象Errors、Properties、Parameters 和Fields 分别对应Error、Property、Parameter和Field对象。
3.答:每个Command对象都有一个相关联的Connection对象。在创建Command对象之前,一般应该先建立Connection对象。对于Command对象时,也可以不先创建Connection对象就直接使用,只需设置Command对象的ActiveConnection属性为一个连接字符串即可。此时,ADO会自行创建一个隐含的Connection对象,但并不给它分配一个对象变量。
第9章 答案:
9.4.1 填空题
1. 0
2. 锁定类型
3. MovePrevious,MoveNext,MoveLast
4. Count,Item
9.4.2 问答题
1. 答:首先表名后面括号内字段名称的排列顺序与VALUES后面括号内数据的排列顺序必须一致。否则进行数据添加时会发生添加失败。其次未设置的字段,添加数据时其默认值为Null。最后添加的一条数据记录,在建立时就给予其默认值,而值是Null。
2. 答:Recordset对象使用Connection对象与数据库建立连接的操作步骤如下:
(1)创建Connection对象,打开数据源。
(2)创建Recordset对象。
(3)打开Recordset取得数据。
(4)处理Recordset对象的记录。
(5)关闭Recordset对象。
(6)关闭与数据库的连接。
第10章 答案:
10.5.1
1.语法错误,运行错误,逻辑错误
2.断点
3.Stop
4.文件,URL
5. On Error Resume Next
6. @TRANSACTION
10.5.2
1.A
2. D
3. B
10.5.3
1.答:断点调试是一种常用的错误调试技术。断点是在脚本中作了标记的位置,它在指定的脚本行暂停执行脚本。当发生错误但无法轻松地找到错误源的时候,预先设置“断点”有时会很有用。可以在可疑的行前面设置一个或多个不同的断点,当再次运行程序时,程序在执行到设置了断点的脚本行后,系统会自动启动脚本调试程序显示脚本,并且语句指针指向设置了断点的行。此时可使用调试程序检查脚本中设置的变量或属性的值。改正错误后,可以清除断点,这样脚本就可以不间断地运行了。
2.答:在数据库的执行中不能直接加入On Error Resume Next错误处理语句,因为如果在数据库添加记录过程中发生运行错误,On Error Resume Next语句会忽略一切的错误,程序依旧会向数据库中添加一个错误的信息数据。为避免这种情况,可在对数据库进行数据处理前加上一句判断语句,如下例所示:
If Err.Number = 0 And objConnection.Errors.Count = 0 Then
"这里才能执行语句,因为没有错误
Set rstResults = dbData.Execute(txtSql)
End If
联系客服