关于mysql中特殊字符的使用注意事项
1 直接拼成sql情况 www.2cto.com
●如果是“=”,需要转义的字符为’ \
'转为''
\转为\\\\
具体代码如下:
sql = sql.replace("'", "''");
sql = sql.replace("\\", "\\\\");
●如果是"like",需要转义的字符为‘ \ % _
'转为''
\转为\\\\\\\\(注意需要8个,汉)
%转为\\%
_转为\\_
具体代码如下:
sql = sql.replace("'", "''");
sql = sql.replace("\\", "\\\\\\\\");
sql = sql.replace("%", "\\%");
sql = sql.replace("_", "\\_");
2 使用预处理sql情况
●只有使用"like"时才需要转义
\转为\\\\
%转为\\%
_转为\\_
sql = sql.replace("\\", "\\\\");
sql = sql.replace("%", "\\%");
sql = sql.replace("_", "\\_");
注意:因 MySQL在字符串中使用C 法(例如,“\n”),你必 在你的LIKE字符串中重 任何“\”。例如, 了查找“\n”,指定它 “ \\n”, 了查找“\”,指定它 “\\\\”(反斜线在java语法分析的时候被剥去一次,另一次是在
数据库的模式匹配完成 ,留下一 的反斜 被匹配)。