我想写一个存储过程(定义一个输出参数):当用户名不正确 返回 1 密码错误返回2 密码和用户名都正确 即登录成功 返回3 这个存储过程怎么写?菜鸟不懂 忘高手指点!
create proc Pro_Login
(
@username varchar(50),
@userpwd varchar(50),
@outparam int output
)
as
begin
.....怎么写 我想返回outparam参数 1 2 3
end
create proc Pro_Login
(
@username varchar(50),
@userpwd varchar(50),
@outparam int output
)
as
begin
.....怎么写 我想返回outparam参数 1 2 3
end
create proc Pro_Login
(
@username varchar(50),
@userpwd varchar(50),
@outparam int output
)
as
begin
if not exists(select 1 from tb where username=@username )
set @outparam=1
else if exists(select 1 from tb where username=@username and userpwd=@userpwd)
set @outparam=3
else
set @outparam=2
end
declare @out int
exec Pro_Login 'lisi','是东方时代90',@out output
select @out
我说的语言是指你调用这个存储过程的开发语言。
create proc Pro_Login
(
@username varchar(50),
@userpwd varchar(50),
@outparam int output
)
as
begin
if not exists(select 1 from tb where username=@username )
set @outparam=1
else if exists(select 1 from tb where username=@username and userpwd=@userpwd)
set @outparam=3
else
set @outparam=2
end
(
@username varchar(50),
@userpwd varchar(50),
@outparam int output
)
as
begin
if not exists(select 1 from tb where username=@username )
set @outparam=1
else if exists(select 1 from tb where username=@username and userpwd=@userpwd)
set @outparam=3
else
set @outparam=2
select @outparamend
最后的那个select语句不能省,否则返回结果有问题。(测试在C#中)
(
@username varchar(50),
@userpwd varchar(50),
@outparam int output
)
as
begin
select @outparam=
case
when username!=@username then 1
when userpwd!=@userpwd then 2
when username=@username and userpwd=@userpwd then 3
end
from tb
end
@username VARCHAR(50),
@pwd VARCHAR(50),
@pramter INT
AS
BEGIN
IF NOT EXSITS (SELECT 1 FROM 表 WHERE usernam=@username)
SET @pramter=1
ELSE IF NOT EXSITS (SELECT 1 FROM 表 WHERE username=@username AND pwd=@pwd)
SET @pramter=2
ELSE
SET @pramter=3
END