|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。web|会见|数据|数据库
一.会见WEB数据库的多种计划
今朝在WINDOWS情况下有多种会见WEB数据库的手艺,次要有:
1.大众网关接口CGI(CommonGatewayInterface)
CGI是较早完成的手艺。合用于多种服务器平台,如UNIX、WINDOWS等,但CGI的开辟本钱高、保护坚苦、功效无限、不具有事件处置功效、占用服务器资本较多。
2.INTERNET数据库毗连器IDC(InternetDatabaseConnector)
IDC集成在ISAPI(InternetServerAPI)中,充实使用了DLL手艺,易扩大,但编程较CGI更加庞大,只合用于小型数据库体系。
3.先辈数据库毗连器ADC(AdvanceDatabaseConnector)
ADC供应了ActiveXControl来会见数据库,它的次要特性是数据查询由用户端扫瞄器实行,因此需将服务器端数据库中的部分纪录下载到用户端,体系开支较年夜、呼应慢,只合用于出格频仍的数据库查询操纵。
4.JAVA/JDBC言语编程
JAVA言语是一种面向工具、易移植、多线程把持的言语,可经由过程JDBC往毗连数据库。用JAVA/JDBC编写的软件可移植性强,合用于多种操纵体系,但其实行效力和实行速率还不睬想,今朝没法创建高效、高速的使用。
5.静态服务器页面ASP(ActiveServerPage)
ASP是微软公司最新推出的WEB使用开辟手艺,侧重于处置静态网页和WEB数据库的开辟,编程天真、简便,具有较高的功能,是今朝会见WEB数据库的最好选择。
二.ASP简介
1.ASP会见数据库的道理
ASP是服务器真个剧本实行情况,可用来发生和实行静态的高功能的WEB服务器程序。
当用户利用扫瞄器哀求ASP主页时,WEB服务器呼应,挪用ASP引擎来实行ASP文件,并注释个中的剧本言语(JScript或VBScript),经由过程ODBC毗连数据库,由数据库会见组件ADO(ActiveXDataObjects)完成数据库操纵,最初ASP天生包括无数据查询了局的HTML主页前往用户端显现。
因为ASP在服务器端运转,运转了局以HTML主页情势前往用户扫瞄器,因此ASP源程序不会保密,增添了体系的平安保密性。别的,ASP是面向工具的剧本情况,用户可自行增添ActiveX组件来扩大其功效,拓展使用局限。
2.ASP页面的布局:
ASP的程序代码复杂、通用,文件名由.asp开头,ASP文件一般由四部分组成:
1)尺度的HTML标志:一切的HTML标志都可利用。
2)ASP语法命令:位于<%%>标签内的ASP代码。
3)服务器真个include语句:可用#include语句调进别的ASP代码,加强了编程的天真性。
4)剧本言语:ASP自带JScript和VBScript两种剧本言语,增添了ASP的编程功效,用户也可安装别的剧本言语,如Perl、Rexx等。
3.ASP的运转情况
今朝ASP可运转在三种情况下。
1)WINDOWSNTserver4.0运转IIS3.0(InternetInformationServer)以上。
2)WINDOWSNTworkstation4.0运转PeerWebServer3.0以上。
3)WINDOWS95/98运转PWS(PersonalWebServer)。
个中以NTserver上的IIS功效最强,供应了对ASP的周全撑持,是创立高速、不乱的ASP主页的最好选择。
4.ASP的内建工具
ASP供应了六个内建工具,供用户间接挪用:
1)Application工具:卖力办理一切会话信息,可用来在指定的使用程序的一切用户之间共享信息。
2)Session工具:存贮特定用户的会话信息,只被该用户会见,当用户在分歧WEB页面跳转时,Session中的变量在用户全部会话过程当中一向保留。Session工具需cookie撑持。
3)Request工具:从用户端获得信息传送给服务器,是ASP读取用户输出的次要办法。
4)Response工具:服务器将输入内容发送到用户端。
5)Server工具:供应对服务器有关办法和属性的会见。
6)ObjectContext工具:IIS4.0新增的工具,用来举行事件处置。此项功效需失掉MTS(MicrosoftTranscationServer)办理的撑持。
5.ASP的次要内置组件:
1)AdRotator组件:用来按指定企图在统一页上主动轮换显现告白,用于WWW上日趋主要的告白服务。
2)BrowserCapabilities组件:断定会见WEB站点的用户扫瞄器的功效数据,包含范例、功能、版本等。
3)DatabaseAccess组件:供应ADO(ActiveXDataObjects)来会见撑持ODBC的数据库。
4)FileAccess组件:供应对服务器端文件的读写功效。
5)ContentLinking组件:天生WEB页内容列表,并将各页按次毗连,用于制造导航条。
别的,还可安装Myinfo、Counters、ContentRotator、PageCount等组件,用户也可自行体例Actiive组件,以进步体系的有用性。
6.DatabaseAccess组件ADO
WWW上很主要的使用是会见WEB数据库,用ASP会见WEB数据库时,必需利用ADO组件,ADO是ASP内置的ActiveX服务器组件(ActiveXServerComponent),经由过程在WEB服务器上设置ODBC和OLEDB可毗连多种数据库:如SYBASE、ORACLE、INFORMIX、SQLSERVER、ACCESS、VFP等,是对今朝微软所撑持的数据库举行操纵的最无效和最复杂间接的办法。
ADO组件次要供应了以下七个工具和四个汇合来会见数据库。
1)Connection工具:创建与背景数据库的毗连。
2)Command工具:实行SQL指令,会见数据库。
3)Parameters工具和Parameters汇合:为Command工具供应数据和参数。
4)RecordSet工具:寄存会见数据库后的数据信息,是最常常利用的工具。
5)Field工具和Field汇合:供应对RecordSet中以后纪录的各个字段举行会见的功效。
6)Property工具和Properties汇合:供应有关信息,供Connection、Command、RecordSet、Field工具利用。
7)Error工具和Errors汇合:供应会见数据库时的毛病信息。
三.ASP会见数据库步骤
在ASP中,利用ADO组件会见背景数据库,可经由过程以下步骤举行:
1.界说数据源
在WEB服务器上翻开"把持面板",选中"ODBC",在"体系DSN"下选"增加",选定你但愿的数据库品种、称号、地位等。本订婚义"SQLSERVER",数据源为"HT",数据库称号为"HTDATA",剧本言语接纳Jscript。
2,利用ADO组件查询WEB数据库
1)挪用Server.CreateObject办法获得"ADODB.Connection"的实例,再利用Open办法翻开数据库:
conn=Server.CreateObject("ADODB.Connection")
conn.Open("HT")
2)指定要实行的SQL命令
毗连数据库后,可对数据库操纵,如查询,修正,删除等,这些都是经由过程SQL指令来完成的,如要在数据表signaltab中查询代码中含有"X"的纪录
sqlStr="select*fromsignaltabwherecodelike%X%"
rs=conn.Execute(sqlStr)
3)利用RecordSet属性和办法,并显现了局
为了更准确地跟踪数据,要用RecordSet组件创立包括数据的游标,游标就是贮存在内存中的数据。
rs=Server.CreateObject("ADODB.RecordSet")
rs.Open(sqlStr,conn,1,A)
注:A=1读取
A=3新增、修正、删除
在RecordSet组件中,经常使用的属性和办法有:
rs.Fields.Count:RecordSet工具的字段数。
rs(i).Name:第i个字段的称号,i为0至rs.Fields.Count-1
rs(i):第i个字段的数据,i为0至rs.Fields.Count-1
rs("字段名"):指定字段的数据。
rs.Record.Count:游标中的数据纪录总数。
rs.EOF:是不是最初一笔记录。
rs.MoveFirst:指向第一笔记录。
rs.MoveLast:指向最初一笔记录。
rs.MovePrev:指向上一笔记录。
rs.MoveNext:指向下一笔记录。
rs.GetRows:将数据放进数组中。
rs.Properties.Count:ADO的ResultSet或Connection的属性个数。
rs.Properties(item).Name:ADO的ResultSet或Connection的称号。
rs.Properties:ADO的ResultSet或Connection的值。
rs.close():封闭毗连。
4)封闭数据库
conn.close()
四.查询WEB数据库举例
上面这段示例程序是会见SQLSERVER数据库的signaltab表,表中有三个字段:code(代码字段,字符型,3位),class(分类字段,字符型,10位),memo(备注字段,字符型,20位)。程序中数据源DSN:HT、用户名:client、口令:passwd。
屏幕输出页面input.asp
<%@language=javascript%>
<html>
<head>
<title>请输出查询前提PLEASEINPUTCONDITION</title>
</head>
<formaction=shotquery.aspMETHOD="post"target="_self">
<inputTYPE="text"size=6maxlength=3NAME=signalCodeVALUE="代码"></font></p>
</center></div><p></p>
<inputLANGUAGE="JavaScript"TYPE="submit"VALUE="确认"NAME="B1"
<inputTYPE="reset"VALUE="扫除"NAME="B2">
<inputLANGUAGE="JavaScript"TYPE="button"NAME="B3"VALUE="前往"
>
</font></p>
</center></div>
</form>
</body>
</html>
数据库处置程序shotquery.asp
<!--#includevirtual="/master/lib.inc"-->
<scriptlanguage=javascriptrunat=server>
varsignalCode=Request.Form("signalCode");
dbConn=Server.CreateObject("ADODB.Connection");
dbConn.open("DSN=HT;UID=client;PWD=passwd");
rs=Server.CreateObject("ADODB.RecordSet");
varsqlStr="select*fromsignaltaborderbycode";
rs.open(sqlStr,dbConn,1);
if(rs.RecordCount<1){
Response.write("<p>无切合前提纪录</p>");
Response.write("<p><form><inputtype=buttonvalue=前往></form></p>");
}
else{
Response.write("<P><center><B>数据查询了局</B></center></P>");
Response.write("<tr><td><b>代码</b></td><td><b>分类</b></td><td><b>备注</b></td>");
for(vari=1;i<=rs.Pagesize;i++){
if(!rs.Eof){
Response.write("<td><spanstyle=font-size:9t>"+rs("code")+"</span></td>");
Response.write("<td><spanstyle=font-size:9t>"+rs("class")+"</span></td>");
Response.write("<td><spanstyle=font-size:9t>"+rs("memo")+"</span></td>");
Response.write("</tr>");
rs.MoveNext();
}
elsebreak;
}
Response.write("</table></form>");
rs.close();
dbConn.close();
}
</script>
asp,jsp,php是web开发的三大技术,asp简单易用且有microsoft做靠山,jsp功能强大是因为有java支持,php则开源跨平台.在国内,asp应用范围最广,jsp发展势头最猛,php则处于劣势.这可能与公司的支持以及技术的培训有关. |
|