我想在数据库中搜索 $!(%&'^%$&'%^&&'^'%'
我尝试了以下查询,但仍显示错误:
select * from data
where data1 LIKE \'$!(%&'^%$&'%^&&'^'%'\'
select * from data
where data1 LIKE '$!(%&'^%$&'%^&&'^'%''
select * from data
where data1 LIKE '$!(%&\'^%$&\'%^&&\'^\'%\''
select * from data
where data1 LIKE '$!(%&\\'^%$&\\'%^&&\\'^\\'%\\''
select * from data
where data1 LIKE '$!(%&\'^%$&\'%^&&\'^\'%\'' ESCAPE '\'
答案 0 :(得分:1)
谢谢大家。 我得到了答案。
String originalString = "$!(%&'^%$&'%^&&'^'%'";
String convertedString = DatabaseUtils.sqlEscapeString(num);
将此convertedString作为参数传递给查询。
答案 1 :(得分:0)
字符串中的单引号可以通过在行中放入两个单引号来编码
所以加倍你的单引号,如下:
select * from data
where data1 LIKE "$!(%&''^%$&''%^&&''^''%''"
但老实说,我不得不多做一些阅读,看看我是否错过了其他任何特殊角色......