网络编程
位置:首页>> 网络编程>> 数据库>> 如何调用SQL Server的存储过程?

如何调用SQL Server的存储过程?

 来源:asp之家 发布时间:2009-11-15 20:15:00 

标签:SQL,Server,存储过程

调用数据库存储过程见下:

<%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.yanbing" 
' 存储过程名称
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 
' 生成查询结果
%>

注意,此例调用的存储过程为yanbing,这是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.yanbing " & "'" & riqi1 & "'" 
Set rs = dataconn.Execute(ss)
%>

 

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com