我在WHERE
声明中有以下SELECT
条件:
WHERE ('.' + column_name LIKE @prefix))
@prefix
参数设置如下:
cmd.Parameters.AddWithValue("@prefix", "%[^a-z]" & prefix & "%")
prefix
变量取自表单输入。
我遇到的问题是当用户输入'%'或'['或其他特殊字符时。如何确保这些转义而不是被视为特殊字符?
相关:一般来说,如何阻止人们在输入中输入'%'并将其视为通配符?
答案 0 :(得分:2)
SQL's LIKE
operator提供了一个可选的ESCAPE
子句:
match_expression [ NOT ] LIKE pattern [ ESCAPE escape_character ]
您可以将转义字符设置为您喜欢的单个字符,并使用它转义元字符。