师傅您在哪里【求助】我创建了一个用户登录表,然后新建了一个登录验证的储存过程:USE [SD]GO/****** Object:
师傅您在哪里【求助】
我创建了一个用户登录表,然后新建了一个登录验证的储存过程:
USE [SD]
GO
/****** Object: StoredProcedure [dbo].[userLogin] Script Date: 10/23/2013 18:56:34 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[userLogin]
@username NVarchar(50) ,@password NVarchar(150)
AS SELECT *from users where Username=@username and Password=@password;
执行储存过程:
USE [SD]
GO
DECLARE@return_value int
EXEC@return_value = [dbo].[userLogin]
@username = N'12',
@password = N'12'
SELECT'Return Value' = @return_value
GO
不解的是该行内容查询出来了,然而'Return Value却显示为0.正常情况应该是为1.如果为0,那么我用户登录便一直等录失败。
请问这是哪里做错了,该怎样解决啊 大婶门@CSharper SQL2008,储存过程
[解决办法]
把存储过程改一下把:
ALTER PROCEDURE [dbo].[userLogin]
@username NVarchar(50) ,@password NVarchar(150)
AS
if exists(SELECT 1 from users where Username=@username and Password=@password)
return 1; --验证登陆
else
return 0; --验证失败
go
