函数|字符串
Create FUNCTION f_checkString(temp varchar(4000))
--f_checkString为方法名
--temp为参数名 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 username=username
if rowcount=0
set result=-1 --用户名错误
else
begin
if status=1
set result=-3 --帐号被锁定
else
begin
if str=result
set result=0 --登陆成功
else
set result=-2 --密码错误
end
end
select result
GO