日期:2014-05-16  浏览次数:20801 次

asp程序调用SQL Server的存储过程,获取不到输出参数的值
各位大虾好,今天碰到一问题 如题...
在数据库中传入参数,可以返回正确的输出,就是不返回给asp程序 上代码:
set CmdSP = Server.CreateObject("ADODB.Command")
CmdSP.ActiveConnection = "Provider=SQLOLEDB;Data Source=10.6.100.48;User ID=WebUser;Password=KEBweb123;Initial Catalog=HR50"
CmdSP.CommandText = "ArrShiftOrConWork_CAL_BY_CODE"
CmdSP.CommandType = 4
CmdSP.Parameters.Append CmdSP.CreateParameter("@FormCode",adVarChar,adParamInput,20,arrformcode)
CmdSP.Parameters.Append CmdSP.CreateParameter("@start_day",adDate,adParamInput,20,arr(arrangecount*2-1))
CmdSP.Parameters.Append CmdSP.CreateParameter("@end_day",adDate,adParamInput,20,arr(0))
CmdSP.Parameters.Append CmdSP.CreateParameter("@Where",adVarChar,adParamInput,4000,wherestr)
CmdSP.Parameters.Append CmdSP.CreateParameter("@IsOverTime",adInteger,adParamOutput)CmdSP.Parameters.Append CmdSP.CreateParameter("@IsConWork",adInteger,adParamOutput)CmdSP.Parameters.Append CmdSP.CreateParameter("@Overtime_code",adVarChar,adParamOutput,4000)
CmdSP.Parameters.Append CmdSP.CreateParameter("@ConWork_Code",adVarChar,adParamOutput,4000)
CmdSP.execute
//获取输出参数值
response.write CmdSP.parameters("@FormCode")&"<br>"
response.write CmdSP.parameters("@IsOverTime")&"<br>"
response.write CmdSP.parameters("@IsConWork")&"<br>"
response.write CmdSP.parameters("@Overtime_code")&"<br>"
response.write CmdSP.parameters("@ConWork_Code")&"<br>"
但是无果。。。。求解,希望大家不惜赐教
asp sql?server

------解决方案--------------------
1 用 adParamInputOutput 试试
2 如果有返回值, ReturnValue 必须是  parameters 的第一个参数.

------解决方案--------------------
http://blog.csdn.net/kingwkb/article/details/1017607