【发布时间】:2011-10-13 19:32:16
【问题描述】:
我正在尝试完成这项工作,但不幸的是它给了我以下错误
Error in Like operator: the string pattern '%testing : | / - “ ‘ & * # @%' is invalid.
只要不包含上述字符串,此搜索就可以工作。这是我的搜索代码
DataRow[] rows = GetAllItems.Select("Name like '%" + cleanedText + "%'");
我尝试过 - 根据 cHaos 进行了修改(尽管仍然有错误)
string cleanedText = SearchText.Replace("\"", "\\\"").Replace("'", "''");
但是当我在搜索中输入以下字符串时没有运气,虽然我知道它在数据中
testing : | / - “ ‘ & * # @%
谁有好的建议
谢谢
【问题讨论】:
-
您使用的是 SQL 数据库吗?
-
嗯...这是做什么的?
sSearctText.Replace("\"", "\"")? -
您确实意识到
.Replace("\"", "\"")没有任何用处,对吧?与所有其他反斜杠替换相同——您将用完全相同的字符替换古怪的字符。你可能想要.Replace("\"", "\\\"")之类的。 -
sSearchText 是原始变量 - cHao,我使用了 Replace("\"", "\"") 它实际上解决了找不到带有 " 的项目的问题。不知道为什么,但我明白你的意思
-
@cHao & Mark 我改变了 sSearctText.Replace("\"", "\"")?到 sSearctText.Replace("\"", "\\\"")?仍然是同样的错误。