==============================================================================
CREATE PROCEDURE  UPdate_PassWord 
(@UserID int,@PassWord nvarchar(255),@NewPassWord nvarchar(255)  ) AS if Exists(SELECT * FROM 帐户表 WHERE 帐户编号=@UserID AND 密码=@PassWord)
                begin
Update 帐户表 SET 密码=@NewPassWord Where 帐户编号=@UserID
return 1
                end
Else
               return 0GO
================================================================================上面的存储过程是修改帐户密码用的!
Return 0 表示没有修改
Return 1 表示已经修改那么如何用 VB  接收由 Return 返回的值呢?

解决方案 »

  1.   

    参考:
    http://www.21ds.net/article/21/26311
      

  2.   

    用 
    Select 0

    Select 1
    可以返回,不能用Return
      

  3.   

    用Command对象来执行,通过Parameters集合来访问返回值
      

  4.   

    如果存储过程只是vb来调用,其实用bluesky23的方法更简单:改存储过程:CREATE PROCEDURE  UPdate_PassWord 
    (@UserID int,@PassWord nvarchar(255),@NewPassWord nvarchar(255)  ) ASif Exists(SELECT * FROM 帐户表 WHERE 帐户编号=@UserID AND 密码=@PassWord)
                   begin
    Update 帐户表 SET 密码=@NewPassWord Where 帐户编号=@UserID
                   select 1 as ischange
                   end
    Else
                   select 0 as IschangeGO
    =============================================
    这样,用Recordset来执行,检查返回的Recordset