VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - 处理Select语句中的单引号
发表评论(0)作者:, 平台:, 阅读:10532, 日期:2000-03-29
在数据库应用中, 经常要动态生成 Select 语句,典型的情况:

SqlString = "Select * from myBas where Name = '" & Text1 & "'"

好啦, 问题出现了, 如果在录入的 Text1 中有一个单引号,结果是把 SqlString 发给数据库时, 将出错!


其实要做的防范很简单, 增加一个函数:


FUNCTION CheckString (s) as String

pos = InStr(s, "'")

While pos > 0

s = Mid(s, 1, pos) & "'" & Mid(s, pos + 1)

pos = InStr(pos + 2, s, "'")

Wend


CheckString="'" & s & "'"

END FUNCTION


以后在动态生成 Select 语句, 使用:

SqlString = "Select * from myBas where Name = " & CheckString(Text1)