用ASP调用SQL Server的视图和存储历程[MSSQL防范]
本文“用ASP调用SQL Server的视图和存储历程[MSSQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
1、前言采集我?ASNwE
ASP (Active Server Pages) 是服务器端的脚本编写环境,它由微软公司的IIS3.0以上版本支持.它可用来成立动态 Web 页或生成功能强盛的 Web利用程序.ASP页是包含 HTML 标志、文本和脚本号令的文件.ASP页可调用ActiveX组件来履行任务,比方衔接到数据库或举行商务计算.通过ASP,可为您的Web页增添交互内容或用HTML页构成整个Web利用程序,这些利用程序利用HTML页作为您的客户的界面. 采集我?ASNwE
2、ASP模子采集我?ASNwE
如图1所示,浏览器从Web服务器上恳求 .asp文件时,ASP 脚本开始运行.然后Web服务器调用ASP,ASP全面读取恳求的文件,履行全部脚本号令,并将Web页传送给浏览器.采集我?ASNwE
ASP供应了一个在HTML页中利用现有脚本语言如 Microsoft VBScript 和 Microsoft JScript 的框架.采集我?ASNwE
ASP供应内建对象,这些对象利用户更简单汇集通过浏览器恳求发送的信息、呼应浏览器以及存储用户信息.包含Application、Request、Response、Server、Session 和ObjectContext 对象.此中最为常用的为Request、Response 和Server三个对象,它们辨别用于从浏览器恳求信息、向浏览器发送信息和拜候服务器上对象的属性和办法.采集我?ASNwE
3、ADO采集我?ASNwE
ASP和后台数据库衔接利用微软的ADO(ActiveX Data Objects),ADO是一项简单利用并且可扩大的将数据库拜候增添到Web页的技术.可以利用ADO去编写紧凑简明的脚本以便衔接到Open Database Connectivity(ODBC)兼容的数据库和 OLE DB兼容的数据源.采集我?ASNwE
ADO包含7个内置对象,它们辨别为Connection、Command、RecordSet、Fields、Error、Parameters和Properties.通过这些对象,ASP可以完成对后台数据库的全部操作.采集我?ASNwE
4、ASP调用视图和存储历程采集我?ASNwE
在普通的MIS利用中,会有大量的报表,此时我们可以在后台数据库编写呼应的视图或存储历程,用ASP通过ADO调用以完成报表工作.下面用一个例子阐明呼应的操作历程.采集我?ASNwE
1.成立 ODBC DSN 文件采集我?ASNwE
在成立数据库脚本之前,必须供应一条使ADO定位、标识和与数据库通讯的途径.数据库驱动程序利用Data Source Name (DSN) 定位和标识特定的ODBC兼容数据库,将信息从 Web 利用程序传送给数据库.采集我?ASNwE
2. 调用数据库视图采集我?ASNwE
拜候数据库信息的第一步是和数据库源成立衔接.ADO供应Connection对象,可以利用该对象成立和管理利用程序和 ODBC数据库之间的衔接.
<%
Set Dataconn = Server.CreateObject("ADODB.Connection") '成立衔接对象
Dataconn.Open "DSN=SinoTrans;SERVER=APP_SERVER;UID=sa;PWD=;APP=Microsoft (R) Developer Studio;WSID=APP_SERVER;Regional=Yes"
Set cmdTemp = Server.CreateObject("ADODB.Command") '成立号令对象
Set rst= Server.CreateObject("ADODB.Recordset") '成立记录集对象
cmdTemp.CommandText = "Customers "
cmdTemp.CommandType = 2
Set cmdTemp.ActiveConnection = DataConn
rst.Open cmdTemp, , 1, 3 '生成查询后果
%>采集我?ASNwE
此时,Customers为视图,从视图中查询数据与从基表中查询数据的办法是相同的.采集我?ASNwE
3.调用数据库存储历程采集我?ASNwE
<%
Set Dataconn = Server.CreateObject("ADODB.Connection") '成立衔接对象
Dataconn.Open "DSN=SinoTrans;SERVER=APP_SERVER;UID=sa;PWD=;APP=Microsoft (R) Developer Studio;WSID=APP_SERVER;Regional=Yes"
Set cmdTemp = Server.CreateObject("ADODB.Command") '成立号令对象
Set rst = Server.CreateObject("ADODB.Recordset") '成立记录集对象
cmdTemp.CommandText = "dbo.pd_test" '存储历程名称
cmdTemp.CommandType = 4 '号令类别为4,表示为存储历程
Set cmdTemp.ActiveConnection = Dataconn
Set tmpParam = cmdTemp.CreateParameter("Return Value", 3, 4, 4)
cmdTemp.Parameters.Append tmpParam
Set tmpParam = cmdTemp.CreateParameter("@BeginDate", 135, 1, 16, riqi)
'成立输入参数对象
cmdTemp.Parameters.Append tmpParam
rst.Open cmdTemp, , 1, 3 '生成查询后果
%>
这里调用的存储历程为pd_test,这种是ADO中供应的尺度办法,但存在一个问题,就是当在存储历程中有两个以上的SELECT语句,但从逻辑上又不大概同时履行的时刻,ADO会提醒你存储历程中SELECT语句太多,办理办法是直接用ADO的CONNECTION对象的EXECUTE办法直接履行存储历程,以下:
<%
Set Dataconn = Server.CreateObject("ADODB.Connection") '成立衔接对象
Dataconn.Open "DSN=SinoTrans;SERVER=APP_SERVER;UID=sa;PWD=;APP=Microsoft (R) Developer Studio;WSID=APP_SERVER;Regional=Yes"
ss = "EXECUTE dbo.pd_test " & "'" & riqi1 & "'"
Set rs = dataconn.Execute(ss)
%>
有关ASP和ADO利用的具体信息,请参阅 Microsoft ActiveX Data Objects (ADO) 和Active Server Pages(ASP)的具体参考.
5、完毕语
在B/S构造的开辟中,我们可以把一些商业法则或复杂查询用存储历程在DBMS中编写,然后用ASP中的ADO对象调用,完成本来C/S构造中的传统功效.
以上是“用ASP调用SQL Server的视图和存储历程[MSSQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |