你是怎么调用你的存储过程的
DECLARE @RE INT
DECLARE @A_INTFORUMID_RE INT
DECLARE @INT_RECORDCOUNT_RE INT
EXEC @RE=STOCNAME
@A_INTFORUMID=@A_INTFORUMID_RE,@INT_RECORDCOUNT=@INT_RECORDCOUNT_RE OUTPUT
SELECT @RE,@INT_RECORDCOUNT_RE

解决方案 »

  1.   

    看一个@RE,@INT_RECORDCOUNT_RE是不是为0
      

  2.   

    调用存储过程也要声明OutPut
    而且,返回是:return,不是retrun
      

  3.   

    declare @a intexec 名 1,@a outputselect @a
      

  4.   


    你的过程改为:@a_intForumID int,
    @int_recordcount int output
    select @int_recordcount = count(*) from tabtopic where forumid=@a_intForumID
    ..不要return
      

  5.   

    调用存储过程也要声明OutPut是什么意思?
    我在asp程序里面这样调用的:
    set cmd=server.CreateObject("ADODB.Command")
    cmd.ActiveConnection=conn
    cmd.CommandType=4
    cmd.CommandText="dbo.sp_GetTopicList"
    cmd.Parameters.Append cmd.CreateParameter("a_intForumID",3,1,,forumid)
    cmd.Parameters.Append cmd.CreateParameter("int_recordcount",3,&H0002)
    set rstopic=cmd.Execute
    我要怎么写才能得到那个值呢?
      

  6.   

    看一个@RE,@INT_RECORDCOUNT_RE是不是为0
    declare @a int
    exec 名 1,@a output
    select @a-------以上的不是很明白是什么意思。。存储过程用得不多
      

  7.   

    cmd.CommandText="dbo.sp_GetTopicList"
    cmd.Parameters.Append  cmd.CreateParameter("RETURN_VALUE", adInteger, adParamReturnValue, 0)...set rstopic=cmd.Execute
    ...
    rstopic.Close()'use cmd.Parameters("RETURN_VALUE")
      

  8.   

    ...
    @a_intForumID int,
    @int_recordcount int output
    AS
    select @int_recordcount = count(*) from tabtopic where forumid=@a_intForumID.........
      

  9.   

    真的没办法了 我在存储过程里面都直接set @int_recordcount=(11)了 读出来还是空的!!!  &H0002=adParamOutputasp代码如下:
    set cmd=server.CreateObject("ADODB.Command")
    cmd.ActiveConnection=conn
    cmd.CommandType=4
    cmd.CommandText="dbo.sp_GetTopicList"
    cmd.Parameters.Append cmd.CreateParameter("@int_recordcount",3,&H0002)
    cmd.Parameters.Append cmd.CreateParameter("a_intForumID",3,1,,forumid)
    set rstopic=cmd.Execute
    response.Write("that is :"&cmd("@int_recordcount").value)