您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 招聘面试 > asp+access教案
动态网页制作—asp+access第一部分:asp简单介绍,主讲其功能第二部分:ASP所用到的VB基本语法第三部分:渐入ASP+ACCESS第四部分:提高部分,主讲实例2.1运行环境的准备:ASP---ACTIVEserverpage动态服务器网页由于ASP是动态网页,所以首先要建立一个支持动态网页运行的模拟服务器的环境。在自己的单台计算机上安装Windows2000专业版或XP,保证有内置组件IIS—internetinformationserver(如果机器运行速度慢,亦可用Windows98+pws—personalwebserver方案),然后安装Access2000(或Access97)。网页和数据库要存放在系统默认的安装磁盘:/Inetpub/文件夹下,以URL方式来运行网页,这样就完成了准备工作。(iis,pws目的的是把自己的单机电脑武装成一个服务器,此时才可以运行动态程序段的网页)本机(bust)花生网站其它用户2.2建立Access数据库进入ACEESS软件,建立一个数据库文件(如book1.mdb),使用系统提供的表设计器或表向导建立一个数据库表(如address),设定表的字段(如name--姓名、no--编号、age--年龄等)各项属性,再录入几个记录,最后用Access工具设置一个数据库密码,这样就可以使用了。如果是在网页运行过程中系统需要在已打开的数据库里自动生成新表,由可用SQL中的createtable命令来实现。如:createtableaddress(namechar(8),nochar(3)primarykey,ageint)也可建立与第一种方法相同的表address。2.3打开数据库2.3.1打开ActiveXDataObject(ADO)连接在打开使用数据库之前应该先让系统打开ADO连接,这样才能打开指定路径下的数据库及使用库内的表。打开ADO连接可以使用server.createobject方法,例如:setad=server.createobject(adodb.connection)可在服务器端建立一个ADO连接对象ad,以后可以用AD实现数据库打开及其它操作。2.3.2取出要打开的数据库的绝对路径要打开数据库文件,就得通知系统数据库所在的位置,网站的网页文件在服务器上一般都是用相对路径这个概念,为保证系统能找到具体的某个数据库,应该使用server.mappath方法取出此数据库文件的绝对路径。如:Pathyy=Server.MapPath(book1.mdb)就可'取出数据库book1的绝对路径存放到pathyy变量中。2..3.3打开数据库有了上面两步准备工作后就可以使用Open方法打开指定的数据库了。如:ad.Opendriver={MicrosoftAccessDriver(*.mdb)};dbq=&Pathyy就可打开绝对路径pathyy下的Access数据库book1.mdb,此后其内的表就可被程序调用。3访问数据库完成了数据库的打开,我们可以对数据内的表进行操作,下面就几种常用情况进行阐述。在操作一个表的全部记录或表的部分记录(一般“部分记录”是执行了条件筛选命令产生的结果)时,由于在一个特定的时刻只能操作其中的某一个当前记录,我们可以用Server.CreateObject建立一个指针对象来指向将要操作的记录。如:Setrs=Server.CreateObject(ADODB.Recordset)就可建立一个代表某表中的所有记录的指针对象rs,利用rs对象可实现逐条访问表中的记录等操作。特别掌握常用数据库表的操作,下面列出部记常用对象的一些方法:rs.movenext将记录指针从当前的位置向下移一行rs.moveprevious将记录指针从当前的位置向上移一行rs.movefirst将记录指针移到数据表第一行rs.movelast将记录指针移到数据表最后一行rs.absoluteposition=N将记录指针移到数据表第N行rs.absolutepage=N将记录指针移到第N页的第一行rs.pagesize=N设置每页为N条记录rs.pagecount根据pagesize的设置返回总页数rs.recordcount返回记录总数rs.bof返回记录指针是否超出数据表首端,true表示是,false为否rs.eof返回记录指针是否超出数据表末端,true表示是,false为否rs.delete删除当前记录,但记录指针不会向下移动rs.addnew添加记录到数据表末端rs.update更新数据表记录这些方法可与VF数据库的命令进行对比学习。实质是一样的,只是书写和概念上有些差异。3.1向数据库表简单地输入和输出数据把数据从表中读出来很简单,如像一般计算机语言中的赋值操作一样。存放到数据库中的数据可以是程序运行中的变量,也可以是用request从上级网页表单中传来的变量等,下面以后者为例,把某用户从表单中传来的姓名(namep)、编号(no)、年龄(agep)存放到数据库中。%nam=Request.Form(namep)//取得从表单传来的数据namep,存放到新变量nam中no=Request.Form(nop)//取得从表单传来的数据编号nop,存放到新变量no中age=Request.Form(agep)//取得从表单传来的数据agep,存放到新变量age中mysql=SELECT*FROMaddress//设置了一个表示查询address表的变量mysqlrs.openmysql,ad,1,3//执行查询,且以可修改的方式打开临时表address.Temp1=rs(“name)//可把当前记录的姓名name字段值读入到变量temp1中rs.addnew//在表的最后增加一个新空记录rs(name)=name//下面三句实现把要增加的数据写入临时表中的新记录中rs(no)=nors(age)=agers.update//把临时表中的改变数据返回更新到原表address中%3.2记录的查询查询是很复杂的一件事,要有一定的SQL基础,目前有多种方法可以实现,方法有难有易,但各有所长,这里举两种比较常见的典型情况予以说明。3.2.1查找唯一值如本文所用数据库表中的编号就是一个唯一值字段,也就是在表中此字段的值不会出现重复值,此时如果要找到某个特定的编号的记录就比较容易,可直接在select语句中完成。如:要在表中找到编号为”003”的记录,并把此记录的姓名,年龄取到变量中。mysql=SELECT*FROMaddress&whereno=&&003&rs.openmysql,ad,1,1//这儿是只读方式打开xm=rs(name)nl=rs(age)由上可见,这种方法困难在查询语句的定义上,一般引号不好处理。3.2.2查找多个满足条件的值多个满足条件的值体现在要查询的关键字段的值有多个,一般要涉及到循环处理,这里介绍一种简单的循环处理办法while-wend语句。如:要在表中找出年龄在20岁以上的所有记录且以年龄降序处理。mysql=SELECT*FROMaddress&ORDERBYnameDESC//DESC可达到降序目的rs.openmysql,ad,1,1whilenotrs.eofifrs(age)20then……//这里是所需要的处理命令,根据实际情况而定endifrs.movenext//指针移动到下一个记录上wend查询执行时,由于在查询中指定为降序排列,所以在临时表里rs指向的第一个记录是年龄最大的记录。程序中的循环主要是用于逐条处理记录,由rs.movenext方法控制指针向下移动,以达到临时文件的尾部eof作为循环的结束条件。循环内部的if判断语句用来筛选出满足条件的记录,省略号之处根据具体情况可写出功能各异的强大程序。3.3记录数据维护数据库中的数据维护是经常性的工作,如删除过时的记录、非法记录,修改错误记录等。维护记录一般是有目的地操作某个特定的记录,所以往往要事先找到要处理的记录,就可能用到前面所述的记录查询。如:要删除编号为002的记录且把编号为004记录的年龄增加1岁mysql=SELECT*FROMaddressrs.openmysql,ad,1,3//数据维护,可能要改变原有数据,所以要以可读写方式进行whilenotrs.eofifrs(no)=002thenrs.Deleteifrs(no)=004thenrs(age)=rs(age)+1rs.movenextwendrs.update//由于改动的表的内容,故要更新原表4数据库的关闭数据库在网络上是共享的,在使用完数据库后要及时关闭它,否则可能造成数据丢失和破坏。具体的操作是在访问完数据后马上用close方法关闭所用过的查询和数据库。如:rs.close//关闭建立的rs指向的查询临时表ad.close//关闭ad代表的系统与数据库的ADO连接5结束语ASP+Access不仅可以方便、高率地处理一般数据,也可处理图片、声音数据,由于篇幅有限,本文不予讨论。一个实用的网站离不开动态网页,ASP+Access技术在目前的网站建设中应用很广泛且在不断地发展,新方法、新思路层出不穷,学习动态网页的过程是长期和艰难的,需要勇于动手实践,打破陈规,摸索出自己的一套方法。应用举例1动态地输出表格:见例子—YY文件夹下的ASP1.HTM及其所有的链接文件。本例可以自动地根据数据行的多少来输出表格,具有应用通用性2数据库内的数据追加:见例子---YY\lesson11下的samp10.HTM及其所有的链接文件.本例可实现把表单内的数据以记录形式追加到数据库中3数据库内的数据维护:见YY文件夹下的ASP2.HTM及其所有的链接文件。此例子比较复杂。应用了多项技术4数据库内数据的删除:见YY文件夹下的ASP2.HTM中的删除部分及其所有的链接文件。5密码验证,密码维护:见ASP+ACCESS深入部分在笼统地讲了一些概念和一些实例后,下面我们再次回头系统地学习一下ASP+ACCESS中的关键技术。ASP与数据库应用(给初学者)见最近许多网友询问一些关于数据库操作的基础问题,现把我以前写的一篇简单教程贴上来,好让一些初学者最快的入门:ASP与数据库应用(给初学者)一般来说,一个真正的、完整的站点是离不开数据库的,因为实际应用中,需要保存的数据很多,而且这些数据之间往往还有关联,利用数据库来管理这些数据,可以很方便的查询和更新。数据库有很多种,如:Fox数据库(.dbf)、Access数据库(.mdb)、Informix、Oracle和SQLServer等等,在这里,我将以MicrosoftAccess数据库为例来说明ASP是如何访问数据库的。常用数据库语句1.SELECT语句:命令数据库引擎从数据库里返回信息,作为一组记录。2.INSERTINTO语句:添加一个或多个记录至一个表。3.UPDATE语句:创建更新查询来改变基于特定准则的指定表中的字段值。4.DELETE语句:创建一个删除查询把记录从FROM子句列出并符合WHERE子句的一个或更多的表中清除。5.EXECUTE语句:用于激活PROCEDURE(过程)用ASP来做一个自己的通讯录练练手吧……一、建立数据库:用MicrosoftAccess建立一个名为data.mdb的空数据库,使用设计器创建一个新表。输入以下几个字段:字段名称数据类型说明其它ID自动编号数据标识字段大小:长整型新值:递增索引:有(无重复)username文本姓名缺省值usermail文本E-mail缺省值view数字查看次数字段大小:长整型默认值:0索引:无indate时间日期加入时间缺省值保存为data.mdb文件,为了便于说明,只是做了一个比较简单的库。二、连接数据库方法1:Setconn=Server.CreateObject(ADODB.Connection)conn.Opendri
本文标题:asp+access教案
链接地址:https://www.777doc.com/doc-5062093 .html