您的位置:首页 > 数据库

Sql Server存储过程之验证登录实例

2012-07-20 16:28 260 查看
说明:

存储过程可以防止SQL注入漏洞的威胁,也会很安全。该存储过程包含输入参数和输出参数,输入参数有用户ID和密码,返回值表示出不同的结果。

ALTER PROCEDURE [dbo].[Logining](
@in_id varchar(10),
@in_password varchar(10),
@out_parameter varchar(10) output
)
/**
@in_id 传入参数 ID
@in_password 传入参数 密码
@out_parameter 传出参数 0成功/1密码错误/2当前状态不可用或者其他原因
*/
AS
declare @temp_password varchar(10);
declare @temp_status varchar(10);

declare @temp_blog varchar(10);
declare @temp_event varchar(100);
declare @temp_count int;

select @temp_count=COUNT(*) from Users where ID=@in_id;
select @temp_password= password from Users where ID=@in_id;
select @temp_status= status from Users where ID=@in_id;

set @temp_event='登录系统客户端';
--验证密码是否正确

if(@temp_count<1)
set @out_parameter=3;
else
begin
if(@temp_password=@in_password)
begin
--验证状态是否可用
if(@temp_status=1)
begin
set @out_parameter=0;
exec WriteBlog @in_id,@temp_event,@temp_blog output;
end
else
begin
set @out_parameter=2;
end
end
else
set @out_parameter=1;

end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: