CREATE PROCEDURE dbo.delUserAll
    as
    set nocount on
    begin
       BEGIN TRANSACTION
       Delete  from dbo.[userinfo]
       IF @@error=0 
          begin
             COMMIT TRANSACTION
             return 1
          end
       ELSE
          begin
             ROLLBACK TRANSACTION
             return 0
          end         
       return
    end
GO<!--#include file="inc/conn.asp"-->
<%
 DIM MyComm,MyPara
    Set MyComm = Server.CreateObject("ADODB.Command")
    MyComm.ActiveConnection = Conn          'Conn是数据库连接字串
    MyComm.CommandText      = "delUserAll"      '指定存储过程名
    MyComm.CommandType      = 4                 '表明这是一个存储过程
    MyComm.Prepared         = true              '要求将SQL命令先行编译
    '声明返回值
    Set Mypara = MyComm.CreateParameter("RETURN",2,4)
    MyComm.Parameters.Append MyPara
    MyComm.Execute
    '取得返回值
    DIM retValue
    retValue = MyComm(0)    '或retValue = MyComm.Parameters(0)
    Set MyComm = Nothing
%>我是想接受 return的返回值   可是这个不显示 是为什么?

解决方案 »

  1.   

    似乎记得 asp里获取return 要通过asp来创建一个command对象(ado连接)
      

  2.   

    查询分析器里面return值能得到么?
      

  3.   

     没有output返回值,肯定不行
    create proc dbo.delUserAll 
    @value int output        ----加output表示为返回值as 
      

  4.   

    CREATE PROCEDURE dbo.delUserAll 
        as 
        set nocount on 
        begin 
          BEGIN TRANSACTION 
          Delete  from dbo.[userinfo] 
          IF @@error=0 
              begin 
                COMMIT TRANSACTION 
                SELECT 1 
              end 
          ELSE 
              begin 
                ROLLBACK TRANSACTION 
                SELECT 0 
              end        
          return 
        end 
    GO 这样应该在查询分析器有值了,在WINFORM中,用EXECUTESCALAR()可以返回值,今天刚用上了
      

  5.   

    我是在asp中用插入一条记录 然后看看是否插入成功 成功返回1 不成功返回0