Rem 过滤SQL非法字符

来源:百度知道 编辑:UC知道 时间:2024/05/25 02:31:54
Rem 过滤SQL非法字符
function checkStr(str)
if isnull(str) then
checkStr = ""
exit function
end if
checkStr=replace(str,"'","''")
end function
看看对不对,解释一下.

这样是最基本的,因为在sql语句中,偶数个单引号不会出错,只有奇数个单引号才会出错,所以这里把一个单引号替换为2个,对文本类型数据做初步检验还是可以的。

楼上写的那个应该说是错误的,没有理由把半角的单引号替换为全角的,那样是以牺牲了正常显示的功能来换取防注入的。假如用了你这个函数,贴代码的时候,代码出来就可能是错的了。

'==========================================
'替换字符串
'==========================================
Public Function CheckStr(sString)
If IsNull(sString) Then
CheckStr = ""
Exit Function
End If
sString = Replace(sString,Chr(0),"")
sString = Replace(sString,"'","’")'将'换成’
sString = Replace(sString,",",",")'将,换成,
CheckStr = sString
End Function