asp 中调用带返回output参数的存储过程---一个非常奇怪的问题---100分寻求解答
存储过程
create PROCEDURE [dbo].[ProSearchPo]
@keyword varchar(50)='''%''',
@order varchar(50)='日期',
@selectFields varchar(100)='ID,PN,PO_NO",
@SearchType int=1,
@user_id varchar(10)='1', --每个搜索都对应user_id
@mission_type int=6,
@fields_out varchar(50)='' output
AS
set @fields_out='hi'
GO
asp 代码
set objCmd=Server.CreateObject("Adodb.Command")
objCmd.ActiveConnection=Application("Conn")
objCmd.CommandText="ProSearchPo"'指定存储过程名称
objCmd.CommandType=4 'adCmdStoredProc '其为StoredProcedure
'-----准备storedprocedure的参数-------
'adParamInput 1 输入参数,即传送数据给一个存储过程 adParamOuput 2 输出参数,即从得到Command对象执行后的输入值
objCmd.Parameters.Append objCmd.CreateParameter("@selectFields",adChar,adParamInput,100,mStrFieldContent)
set rs=objCmd.Execute
Response.Write objcmd.Parameters("@fields_out").value
错误消息
Microsoft OLE DB Provider for SQL Server (0x80040E14)
形式参数 '@order' 定义为 OUTPUT,但实际参数却未声明为 OUTPUT。
/crm/Po/PoManage.asp, 第 35 行