create function f_checkstring(@temp varchar(4000))
--f_checkstring为方法名
[email protected]为参数名 varchar为参数类型 4000为类型长度
--过滤sql字符串
returns varchar(4000)
--返回类型为varchar长度为4000
as
begin
set @temp=replace(@temp,'''','')
set @temp=replace(@temp,'"','')
set @temp=replace(@temp,':','')
set @temp=replace(@temp,'-','')
return @temp
end
--------------------------------------------------------------------------------------------
在mssql中存储过程中调用方法如下:
--判断用户名和密码是否正确
--exec sp_checkuser
--2006-8-2
--dzend.com
create procedure sp_checkuser
@username varchar(20), --用户名
@password varchar(20) --密码
as
declare
@str varchar(20),
@result int,
@status int
--过滤非法字符串
select @username=dbo.f_checkstring(@username)
select @password=dbo.f_checkstring(@password)
select @str=[password],@status=status from usersinfo where [email protected]
if @@rowcount=0
set @result=-1 --用户名错误
else
begin
if @status=1
set @result=-3 --帐号被锁定
else
begin
if @[email protected]
set @result=0 --登陆成功
else
set @result=-2 --密码错误
end
end
select @result
go
新闻热点
疑难解答