ASP调用SQL SERVER存储程序

王朝asp·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

调用数据库存储过程

<%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)

%>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有  導航