2013-09-26 47 views
0

我有一个项目表,其中我有一个项目名称,该项目名称可能包含任何特殊字符或任何字母数字值或数字或特殊字符的任何组合。搜索所有特殊字符的数据库表

现在我需要应用关键字搜索,并可能包含搜索中的任何特殊字符。

所以我的问题是:我们如何搜索数据库中的单个或多个特殊字符?

我正在使用mysql 5.0与java hibernate api。

回答

0

这应该是可能的一些简单的消毒查询。

如:用于\@(%*#$\搜索变为:

SELECT * FROM foo WHERE name LIKE "%\\@(\%*#$\\%"; 

当评估后,以使搜索最终被任何包含"\@(%*#$\"

一般来说任何的特殊字符字符串中的斜杠逃生可以通过反斜杠进行转义。这只有真正变得棘手,如果你有一个名字,如:"\\foo\\bar\\"哪些要正确地逃脱将成为"\\\\foo\\\\bar\\\\"

一个方面,请证明您的帖子在完成前阅读您的帖子。当你的问题标题有拼写错误时,它真的很令人沮丧,并且显示出缺乏努力。