<p>视频教程地址1:<a target=_blank href="http://www.enet.com.cn/eschool/zhuanti/asp/">http://www.enet.com.cn/eschool/zhuanti/asp/</a><br />视频教程地址2:<a target=_blank href="http://tech.163.com/special/000915SN/staspnew.html">http://tech.163.com/special/000915SN/staspnew.html</a><br /><br />第二章 准备<br />2.1 ASP是什么东东? <br />1.<TABLE>标签是HTML语言里的(表格标签)功能。 <br />2.<TB>标签表示的是(表格的一个单元格)。 <br />3.网页的主体内容应该放到(<body> </body>)对标签里? <br />4.看代码判断表格: <table width="466" height="127"> <br /><tr><td> </td> <br /><td rowspan="2"> </td></tr> <br /><tr><td> </td></tr> </table> <br />5.通过input标签可以建立(一个文本框、一个单选按钮、一个多选按钮、一个按钮)表单元素。 <br />6.<input type="radio" name="radio" value=1>的作用是(建立一个单选按钮,当按钮被中时,值为1)。 <br />7.<div align=center></div> 这对DIV标签(将标签中的内容横向居中对齐)。 <br />8.HTML语言的注释代码是(<!-- -->) <br />2.2 构建一个ASP运行环境 <br />1.ASP的运行环境是(IIS)。 <br />2.IIS是(WWW服务器、HTML服务器)。 <br />3.IIS在控制面板的添加/删除程序功能的(添加/删除组件)选项里安装。 <br />4.访问本地WWW服务器时应该使用http://(localhost)来访问。</p><p>第三章 师傅领进门<br />3.1 程序是怎么工作的 <br />1.ASP代码是写在(<% %>)一组标签里的。 <br />2.将我条语句放在一行时,我们需要用(:)把多条语句隔开。 <br />3.下面关于ASP代码的说法正确的是(只能放在ASP标签中、可以放置到网页的任何地方)。 <br />3.2 能变的量 <br />1.变量是(能变的量)。 <br />2.下列(=)运算符是赋值运算符。 <br />3.赋值运算符的作用是(将其右边的内容赋值给左边的变量)。 <br />4.我们要输出变量value的内容应该这样写(response.write(value))。 <br />3.3 变量、变量、变量 <br />1.下列这些语句里哪个value是变量?(response.write(value))。 <br />2.下面这段代码执行后,变量value的值应该是(+1)。 <br />3.下面这段代码执行后变量d的值是(77)。 <br />4.下面是算术运算符的有(+ ^ * mod)。 <br />3.4.1 数据的类型 <br />1.字符串类型的数据用(””)符括起来。 <br />2.下列(b=12.5 d=125*74)变量得到的值是数值类型。 <br />3.下列(a123 bbs)变量的命名是正确的。 <br />4.下列字符串表示时间的是(#2..6-12-12#)。 <br />3.5.1 分支语句 <br />1.IF语句是(判断语句、分支语句、条件语句)。 <br />2.下列(/ += =< <=>)不是条件运算符。 <br />3.下面这段代码中的IF语句中的(else)分支会被执行。 <br />4.下面这些条件语句成立的有(4*3+5<=17 3/(3-2)>0 1+5/2>=3)。 <br />3.6 组合拳 <br />1.逻辑运算的结果有(true false)。 <br />2.下面不是逻辑运算符的是(mod)。 <br />3.当and运算符左边的条件为(true),并且右边的条件为(true)时,条件表达式的值才为(true)。 <br />4.当or运算符左边的条件为(true),或者右边的条件为(true)时,条件表达式的值才为(true)。 <br />5.当not运算符右边的值为(flase)时,条件表达式的值为(true)。 <br />6.3>=2 or 3<1 and 4>=3 这个条件语句的值是(true)。 <br />7.3>2 and not 3>4 这个条件语句的值是(true)。 <br />3.7.1 转(上) <br />1.ASP里的循形是指(在指定的条件下多次重复执行一组语句)。 <br />2.For循环语句中的循环体代码的执行次数是可以预知的吗(可以)。 <br />3.For循环中的循环变量的值每执行一次后循环体会(加1)。 <br />3.7.2 转(下) <br />1.循环中还可以放循环,这叫做(循环嵌套)。 <br />2.下面的代码是否正确(不正确)。 <br />for x=1 to 7 <br /> for x=2 to 8 <br />response.write "x"<br /> next <br />next <br />3.8.1 数组 <br />1. 数组是(具有相同名字不同下标值的一组变量)。 <br />2. 下面定义的数组有多少个数组元素(6)。 <br />Dim value(5) <br />3. 多维数组的多个下标数值用(,)隔开。 <br />4. 下面定义的数组有多少个数组元素(8)。 <br />Dim value(1,3) <br />5. 下面这段代码的输出结果是(35)。 <br />Dim a(b) <br />for i=0 to 6 <br /> a(i)=i+1 <br />next <br />for i=0 to 6 <br /> count=count+a(i)+1 <br />next <br />response.write(count)</p><p>第四章 雨后春笋<br />4.1.1 输入和输出(上) <br />在ASP获取用户提交的表单元素的值我们用request.(form)("表单元素名")。 <br />4.1.2 输入和输出(下) <br />1.在浏览网页时经常发现地址栏中的网页文件后加一个?以及一串字符串,它们是(传送给网页的参数及参数的值)。 <br />2.传送给一个网页多个参数时,我们将多个参数用(&)连接,参数名和参数值用(=)连接,在ASP获取地址栏参数的值我们用request.querystring(“地址栏参数名”)。 <br />3.在ASP中(输入和输出是由程序员依照设计要求来设计的)。 <br />4.2.1 函数(上) <br />1.函数:(预先写好的一段可以实现某种功能的代码)。 <br />2.帮助手册中函数的语法示例中[ ]表示(此参数非必须填写)。 <br />3.下面代码的输出结果为(系统当前日期)。Response.write(date())。 <br />4.常数是(被预先定义好的量,不可被修改)。 <br />5.下面给出函数的语法,请从答案列表中选择调用此函数方法正确的所有语句 <br /> MID函数语法:Mid(string,start[,length]) <br />调用方法1:a=mid("abc",1,1) 调用方法2:response.write(mid("abc",2,1)) <br />4.2.2 函数(下) <br />下面哪些函数只能在客户端执行的(Msgbox和inputbox) <br />4.2.3 自编函数(上) <br />1.什么是自编函数(自己编写的函数)。 <br />2.自编函数的参数是根据要求可有可无的?(是)。 <br />3.定义自定义函数的关键字是(function)。 <br />4.自编函数是以(end function)标识结尾。 <br />5.下面的代码输出结果是(50∶149) <br /> function fun(a,b,c) <br /> if a>b then <br /> d=a <br /> else <br /> d=b <br /> end if <br /> if d<c then d=c <br /> fun=d <br /> end function <br /> response.write(fun(3,50,49)) <br /> response.write("∶") <br /> response.write(fun(49,149,50)) <br />6.上题中的函数作用是(求三个数中的最大值)。 <br />4.2.5 自编函数(下) <br />1.形参和实参(名字可以不一样)。<br />2.全局变量和局部变量不可以重名?(否)。</p><p>第五章 对象与组件<br />5.1.1 REQUEST对象 <br />1.我们可以使用哪个ASP对象取得表单字段的值?(request)。 <br />2.若要将表单数据以字符串的方式附加在网址的后面返回服务器,必须将<form>标记的METHOD属性设置为(get)。 <br />3.负责取得WEB服务器的环境变量值的集合是(servervariables)。 <br />4.Request对象有几个属性?(1个)。 <br />5.1.2 response对象(上) <br />1.下面哪些是ASP内置的对象?(Application Server Response)。 <br />2.哪个ASP对象可以用来决定何时或如何将输出由服务器端传送到浏览器?(response)。 <br />3.若要停止ASP程序的执行并将存放在缓冲区的输出传送至浏览器端,可以使用哪个方法?(response.end)。 <br />4.若要将浏览器端导向至其它网页,可以使用哪个方法?(redirect)。 <br />5.我们可以使用哪个属性设置放进缓存区的网页逾期时间长短?(expires)。 <br />5.1.3 response对象(下) <br />1.Request对象和response对象都有cookies集合,request对象的cookies集合用来(取得用户cookies信息),response对象的cookies集合用来(设置cookies数据到浏览器)。 <br />2.我们可以通过(response)对象的cookies集合的(expires)属性来设置cookies变量的过期时间。 <br />3.Cookies的克星是(用户浏览器设置禁用cookies)。 <br />5.1.4 session对象 <br />1.Session和cookies一样都是存储在客户端浏览器中的(不是)。 <br />2.Session对象无法记录数组、对象等复杂的数据类型(否)。 <br />3.我们获取session变量的值只能通过 变量=session(“session变量名”)这一种方法(否)。 <br />4.我们可以设置session对象的(Timeout)属性改变session对象的有效时间,如果要结束session我们使用session对象的(abandon)方法。 <br />5.如果客户端禁用cookies的话,我们(不可以使用cookies,因为session信赖cookies的支持)。 <br />5.1.5 application对象 <br />1.下面正确的是(application变量和session变量存储在服务器端,cookies存储在客户端)。 <br />2.Session变量和application变量一样都可以被所有用户共享,只是session变量的生存期要短一些而已,这条观点是(错误的)。 <br />3.当用户关闭浏览器,或是在超时时间范围风没有任何动作时,Application对象会自动失效(否)。 <br />4.Application对象的onstart事件触发条件是(第一个人第一次访问网站时),session对象的onstart事件触发条件是(某个人第一次访问网站内任意页面时)。 <br />5.我们在操作application变量之前需要使用application.(lock)语句(锁定)application对象,而在操作完成后要使用application.(unlock)语句来(解锁)。 <br />5.1.6 server对象 <br />1.当我们有一个需要执行比较长时间的网页时,我们要设置server对象的(Scripttimeout)属性。 <br />2.如果要将字符串进行编码,使它不会被浏览器解释为html语法,可以使用哪个方法?(HtmlEncode)。 <br />3.如果要找出父目录的实际路径,我们应该使用(server.mappath("…/"))。 <br />4.我们可以使用server对象的(CreateObject)方法来将一个组件实例化,并且,在实例化组件时,需要使用(set)关键字。 <br />5.2.1 FSO组件(上) <br />1.FSO组件和ASP内置对象一样,可以直接使用(否)。<实例组件后才可使用> <br />2.FSO组件的Drivexists方法可以用来检查文件是否存在(否)。<FileExists方法> <br />3.如果要复制文件夹,可以使用下列哪个方法(CopyFolder)。 <br />4.我们要将d:\a.txt复制到d:\abc目录中,并改名为b.txt应该这样写,其中fs是已经建立好的FSO对象变量:fs.(CopyFile) "d:\a.txt" , " d:\(abc\b.txt)"。 <br />5.FSO对象的(gettempname)方法可以得到一个临时文件或文件夹名。 <br />5.2.2 FSO组件(下) <br />1.下面这条语句的第三个参数意义是什么?(若打开的文件不存在就建立) <br /> FS.OpenTextFile("a.txt",1,Ture) <br />2.如果要从文件中读取字符,可以使用哪个方法(Read)。 <br />3.要操作文件需要使用Fextstream对象,那么我们可以通过哪些途径得到它呢?(FSO对象的CreateTextFile方法、FSO对象的OpenTextFile方法)。 <br />4.如果要在文件中写入空行,可以使用哪些方法?(writeline和writeblanklines)。 <br />5.我们要判断文件指针是否到行末要使用TextSteam对象的(AtEndofline)属性,而判断是否到文件末,则使用(Atendofstream)属性,想知道当前处于文件中的当前字符串所在列号使用(Column)属性,返回当前行号使用(line)属性。</p><p>第六章 数据库<br />6.2.3 Accecc的简单操作(下)<课前作业><br />1.在Access中建立数据表一共有(3)种方法,我们最常用的是(使用设计器创建表)。 <br />2.索引可以加快我们查询和排序数据的速度(对)。 <br /> 索引会加快查询和排序数据的速度,不会对数据库其它性能产生影响(响)。 <br /> 主键是每个表都必须有的(错)。 <br /> 主键不可以重复(对)。 <br /> 当设置为多个主键时,每个主键字段的值都不能重复(错)。 <br /> 当一个字段被设置成有默认值时,在输入数据时我们可以不用填写它(对)。 <br />6.3.1 SQL语句1 <br />1.要查询class表中的所有记录应该如何写SQL语句?Select (*) from class <br />2.要查询class表中的所有记录,但只需要返回c_id和c_name字段,应该如何写SQL语句? <br /> Select (c_id,c_name) from class <br />3.要查询class表中字段c_stu值大于50,或者小于20的记录,并且只返回c_name和c_stu字段,应该如何写SQL语句?(select c_name,c_stu from class where c_stu>50 or c_stu<20)。 <br />6.3.2 SQL语句2 <br />请写出在class表中查找满足如下条件的记录的SQL语句:①返回字段c_name,c_stu ②返回记录数:前5条 ③查询条件:c_stu值大于30,并且c_type值为真,并且c_name字段值中有“二班”两个字 ④查询结果按c_stu正排序,按c_type倒排序(select top 5 c_name,c_stu from class where c_stu>30 and c_type=true and c_name like '*二班*' order by c_stu asc,c_type desc)。 <br />6.3.3 SQL语句3 <br />请写出在class和stu表中查找满足以下条件的记录的SQL语句:①表class中的字段c_id与stu表中的s_cid为关联字段 ②返回字段c_name,s_no,s_name ③查询条件:c_stu字段大于20,并且s_no第二到第四位是“006”这三个字符的 ④查询结果按s_no倒排序。注:因为两个表中字段没有重名,因此写本条语句时字段名前不用加表名。(select c_name,s_no,s_name from class,stu where c_id=s_cid and c_stu>20 and s_no like '?006*' order by s_no desc)。 <br />6.3.4 SQL语句4 <br />1.写出满足条件的SQL语句: <br /> 向class表中插入数据:c_name=’三年二班’,c_stu=45,c_type=false 注:请在答案的各段之间加空格隔开(insert into class (c_name,c_stu,c_type) values ('三年二班',45,false))。<除文字外的所有字符均在英文状态下输入> <br />2.删除stu表中s_age字段值大于45的记录(delete from stu where s_age>45)。 <br />3.将表stu中所有s_no值第二和第四位分别为“6”和“1”的记录的s_age字段值减去1(update stu set s_age=s_age-1 where s_no like '?6?1*')。</p><p>第七章ASP操作数据库<br />7.1 ASP操作数据库1 <br />1.我们要连接数据库需要使用ADO组件中的(connection)对象,创建它的方法是:set 变量名=server.CreateObject(“ADODB. connection”)。<br />2.我们使用connection对象的(open)方法加上(连接字符串)就可连接数据库了。<br />3.我们常用的数据库连接方式是:(连接字符串方式连接)。<br />7.2 ASP操作数据库2 <br />1.我们可以将常用的代码放置在一个单独的文件上,然后在需要使用它们的地方引用,引用它的方法是:(<!--# include file=”file.asp”-->)。<br />2.下面哪些可以创建一个用于操作数据的recordset对象?(set rst=server.CreateObject(“ADODB.Recordset”)和set rst=connection.execute(“SQL”))。<br />3.我们可以判断recordset对象的(recordcount)属性的值来知晓是否有查询返回结果。<br />4.我们可以使用recordset对象的(open)方法来执行SQL语句,并返回查询结果,如果我们想要更改查询结果,那么LookType参数的值可以设置为:(AdLockPessimistic(1)、AdLockOptimistic(2)、AdLockBatchOptimistic(3))。<br />7.3 ASP操作数据库3 <br />1.Recordset对象使用过open方法后如果我们需要再次使用它的话,必须要(关闭)它,使用的语句是:recordset.(close)。<br />2.插入一条新数据,可以使用recordset对象的(addnew)方法,然后对各字段进行赋值,只有当执行了recordset对象的(update)方法后数据才被插入到数据表中。<br />3.给日期字段赋值时,要在日期字符串前面加(#)。<英文状态下输入> <br />4.在用完connection对象和recordset对象后,我们需要释放它们所占用的资源,我们可以这样:connection/recordset.(close) set connection/recordset=(nothing)。<br />5.下面哪条SQL语句可以获得最后最后插入的记录中自动编号字段的值?(SELECT @@IDENTITY)。<br />6.在查询语句中我们可以使用(AS)关键字来改变查询返回结果集的字段名。<br />7.4 ASP操作数据库4 <br />1.如果我们要自己来捕获ASP错误,我们需要网页的头部加上一条语句,以设置当发生错误时直接执行后面的语句,这条语句是(on error resume next)。<br />2.我们可以使用connection对象的(errors)集合来获取ADO操作中发生的错误,如果发现这个集合的(count)属性值大于(0)的话,证明出错了。<br />3.当即现出错后,我们可以通过set erro=connection.errors.(item)(error对象索引)来获取其中一个error对象,然后我们就可以通过error对象的(number)属性知道错误代码,并通过(description)属性来获取错误描述。 <br />4.使用完错误对象后,应该随手清空它,以免造成下次错误捕获不准确,我们使用语句: err变量.(clear)。 <br />7.5 ASP操作数据库5 <br />1.为了防止多次数据库操作全部成功或全部无效,我们可以使用(事务)方法解决。 <br />2.Connection对象为我们提供了三个与事务相关的方法,它们是: <br /> 开启事务:connection.(Begintrans) <br /> 结束事务并保存更改:connection.(Committrans) <br /> 结束事务并取消更改:connection.(Rollbacktrans)。 <br />7.6 ASP操作数据库6 <br />1.如果我们查得到数据表中某个字段的信息需要用recordset对象的(fields)集合中的(field)对象。 <br />2.取得field对象的方法是:set field=recordset.fields.item(index),我们可以通过field对象的(name)属性得到字段名,还可以通过(type)属性得到字段的类型。 <br />3.我们可以在记录集内移动指针,以便操作不同的数据记录,如果我们要将指针移到最后一条记录,可以使用(movelast)方法,将指针移到首记录使用(movefirst)方法,移动到上一条记录使用(moveprevious)方法,移动到下一条记录可使用(movenext)方法。 <br />7.7 ASP操作数据库7 <br />1.删除记录,我们可以直接使用SQL语句中的delete语句,也可以将记录查询到之后使用recordset对象的(delete)方法来删除当前记录。虽然直接使用Delete语句删除记录非常方便,但有时对于一些需要进行复杂判断才决定是否删除记录的情况下,我们还是要使用recordset对象的(delete)方法来删除记录。 <br />2.更新一条记录除可以使用update语句外,还可以将记录查询到之后,改变各字段的值,然后使用recordset对象的(update)方法来更新数据。虽然直接使用update语句更新数据十分方便,但有时对于需要进行一些不规则更新的时候还是要使用到recordset对象的(update)方法来更新数据记录。<br />(完)</p> |
|