|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。程序|计划|数据|数据库 弁言
本文针对ASP程序计划中最基本、也是最关头的部分"数据库文件的挪用"举行申明,同时谈谈ASP程序计划中数据库文件挪用的一些技能。
ASP简介
ASP(ActiveServerPages)是微软于1996年推出的Web使用程序开辟手艺,它是一种剧本言语、ActiveX组件及HTML言语等的综合,微软把它形貌为"一个服务器的剧本情况,在这里能够天生和运转静态的、交互的、高功能的Web服务器使用程序"。其次要功效是为天生静态的、交互式的Web服务器使用程序供应一种功效壮大的体例或手艺。其特性是命令和剧本都在服务器中注释实行,然后送到客户端扫瞄器的内容只是尺度的HTML页面。其长处是程序计划复杂易懂,并且便利快速。ASP在国际的使用已十分广泛,相称一部分的静态网站都使用了ASP手艺。
ASP数据库文件的挪用
固然分歧的体系大概安装分歧的数据库驱动程序,但一样平常的服务器体系都基础撑持IIS4.0/5.0,以是服务器体系上最少会有MicrosoftAccessDriver、MicrosoftODBCforOracle、SQLServer等3种数据库驱动程序。因而,服务器体系最少可使用Access、Oracle、SQLServer等3种数据库来处置ASP网页数据库计划。因为MicrosoftAccess97/2000属于微软的Office系列之一,且界面和Office系列软件类似,进修起来基础没甚么停滞,因而,本文将从初学者进门的角度,利用Access数据库文件来举行ASP程序计划。
经由过程Access使用程序制造如的数据库文件(friend.mdb)
那末,ASP程序计划中挪用该数据库文件有两种体例,一种为间接在"把持面板"的"数据源(ODBC)"长进行手工设置;别的一种是编程,经由过程绝对路径挪用数据库文件,这类体例可合用在任何一台服务器上而不必再举行设置。第一种体例较为复杂平安,本文所谈的是第二种体例。
上面列出ASP程序计划中一样平常读取数据库文件中表纪录的办法:
01:<HTML><BODY>
02:<!--#includefile="adovbs.inc"-->
03:<%
04: ’利用ASP的Connection工具翻开数据库,数据库文件为上图的<Friend.mdb>’
05: DimobjConn
06: SetobjConn=Server.CreateObject("ADODB.Connection")
07: objConn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;"&_
08: "DataSource="&Server.MapPath("Friend.mdb")
09: objConn.Open
10: 读取"data"表的纪录,然后寄存在Recordset工具
11: DimobjRS
12: SetobjRS=Server.CreateObject("ADODB.Recordset")
13: ObjRS.Open"data",objConn,adOpenKeyset,adLockOptimistic,adCmdTable
14: ’将今朝指针所指到的纪录显现在扫瞄器上
15: IfNotobjRS.EOFthen
16: Response.Write"编号:"&objRS("编号")&"<BR>"
17: Response.Write"姓名:"&objRS("姓名")&"<BR>"
18: Response.Write"性别:"&objRS("性别")&"<BR>"
19: Else
20: Response.Write"抵达数据库的开头,已显现完一切切合前提的纪录"
21: EndIf
22: ’封闭数据库毗连并开释工具实例
23: ObjRS.Close
24: SetobjRS=Nothing
25: ObjConn.Close
26: SetobjConn=Nothing
27:%>
28:</BODY></HTML>
上述代码为ASP编程中一样平常翻开Access数据库文件的计划步骤。
数据库文件挪用的技能
(1)现实上,不管换成哪一个Access数据库,翻开数据库毗连与读取表纪录的步骤是不异的,个中的变量在于数据库文件的称号及表的称号,以是能够将上述程序的第3~13行改写成函数的情势,并存成一个文件如:ADOFunctions.asp,往后要翻开某个数据库文件的话,就把该文件ADOFunctions.asp装(include)出去,代码以下:
<%
DimobjConn
’变量Filename为数据库文件名,变量TableName为表名
FunctionGetRecordset(FileName,TableName)
’利用ASP的Connection工具翻开数据库
SetobjConn=Server.CreateObject("ADODB.Connection")
objConn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;"&_
"DataSource="&Server.MapPath("Filename")
objConn.Open
’读取表的纪录,然后寄存在Recordset工具"objRS"
DimobjRS
SetobjRS=Server.CreateObject("ADODB.Recordset")
ObjRS.OpenTableName,objConn,adOpenKeyset,adLockOptimistic,adCmdTable
EndFunction
%>
由上述代码可知,函数名为GetRecordSet,其前往值是寄存了表纪录的Recordset工具实例,存成文件名为ADOFunctions.asp。如今,使用该文件就能够读取任何数据库文件的纪录了。如一样平常读取数据库的编程可简化以下:
<HTML><BODY>
<!--#Includefile="adovbs.inc"-->
<!--#includefile="ADOFunctions.asp"-->
<%
’挪用GetRecordset函数获得一个Recordset工具实F例,然后指派给变量objRS
DimobjRS
SetobjRS=GetRecordset("Friend.mdb","data")
’将今朝指针所指到的纪录显现在扫瞄器上
IfNotobjRS.EOFThen
Response.Write"编号:"&objRS("编号")&"<BR>"
Response.Write"姓名:"&objRS("姓名")&"<BR>"
Response.Write"性别:"&objRS("性别")&"<BR>"
Else
Response.Write"抵达数据库的开头,已显现完一切切合前提的纪录"
EndIf
’封闭数据库毗连并开释工具实例
ObjRS.Close
SetobjRS=Nothing
ObjConn.Close
SetobjConn=Nothing
%>
</BODY></HTML>
因而,只需在这句代码SetobjRS=GetRecordset("Friend.mdb","data")中改动数据库称号和表称号就能够挪用任何Access数据库文件了,固然,要注重的是,前面的数据库中每一个表的字段名必定要婚配。
(2)别的,不管换成哪一个Access数据库,翻开数据库毗连与选择表纪录的步骤也是不异的,个中的变量在于SQL语句(如:"SELECT*FROMdata")、数据库文件的称号及表的称号。因而一样事理,能够将这3个变量作为函数的参数,撰写GetSQLRecordset函数,并存成文件名为ADOSQLFunctions.asp,往后要用到的话,只需在程序的最后面把这个文件Include出去,就能够使用GetSQLRecordset函数翻开数据库毗连,同时也举行选择表纪录,该函数的前往值是寄存了切合SQL语句的Recordset工具实例。
代码以下:
<%
DimobjConn
DimGetSQLRecordset
FunctionGetSQLRecordset(strSQL,FileName,TableName)
’利用ASP的Connection工具翻开数据库
SetobjConn=Server.CreateObject("ADODB.Connection")
objConn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;"&_
"DataSource="&Server.MapPath("Filename")
objConn.Open
’从表读取切合SQL语句的纪录并寄存在Recordset工具
SetGetSQLRecordset=Server.CreateObject("ADODB.Recordset")
GetSQLRecordset.Open_strSQL,objConn,adOpenKeyset,adLockOptimistic,adCmdText
EndFunction
%>
上述代码中函数称号为:GetSQLRecordset,文件名为ADOSQLFunctions.asp。
如今,使用该文件就能够挪用任何Access数据库的毗连,同时对表纪录举行选择的操纵。以Friend.mdb文件为例,列出表data中一切的纪录,程序代码以下:
<HTML><BODY>
<!--#includefile="adovbs.inc"-->
<!--#includefile="ADOSQLFunctions.asp"-->
<%
DimobjRS
SetobjRS=GetSQLRecordset("SELECT编号,姓名,性别from_data","Friend.mdb","data")
DoWhileNotobjRS.EOF
Response.Write"编号:"&objRS("编号")&"<BR>"
Response.Write"姓名:"&objRS("姓名")&"<BR>"
Response.Write"性别:"&objRS("性别")&"<BR>"
Loop
objRS.Close
SetobjRS=Nothing
ObjConn.Close
SetobjConn=Nothing
%>
</BODY></HTML>
小结
在ASP编程中,使用好函数常常能够对我们的程序代码复杂了然化,读取层次也简单保护,同时也可制止大批的反复冗杂的代码。像上述的情形,若只是复杂的与数据库毗连,则用第一种情形,将文件ADORecordset.asp装(include)出去就能够了,若要对数据库中某个表的纪录举行选择或其他SQL语句操纵,则用第二种情形,将文件ADOSQLRecordset.asp装出去就能够了。Windows本身的所有问题都会一成不变的也累加到了它的身上。安全性、稳定性、跨平台性都会因为与NT的捆绑而显现出来; |
|