精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● 数据库技术>>WEB数据库开发>>ASP调用存储过程

主题:ASP调用存储过程
发信人: [email protected]()
整理人: chedong(1999-07-15 20:46:44), 站内信件

调用数据库存储过程
<%Set Dataconn = Server.CreateObject("ADODB.Connection")
'建立连接对象
Dataconn.Open "DSN=SinoTrans;SERVER=APP_SERVER;UID=sa;PWD=;APP=Microso
ft(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=Microso
ft(R)
Developer Studio;WSID=APP_SERVER;Regional=Yes"
ss = "EXECUTE dbo.pd_test " & "'" & riqi1 & "'"
Set rs = dataconn.Execute(ss)
%>

--
如果你觉得可笑的话,那么你错了
如果你觉得不可笑的话,那么我错了。

※ 来源:.网易虚拟社区北京站 http://bj.netease.com.[FROM: 202.96.31.244]

[关闭][返回]