如何在Java中用单引号引起查询语句。当我搜索带有单引号的单词时,它没有显示要显示的记录

例如我有一个名字D'costa我将如何使用java搜索这个

 getSearchByUserSQL.append("SELECT * FROM SID_USERS  ");
    getSearchByUserSQL.append("WHERE lower(FIRSTNAME) like  ?
          OR lower(LASTNAME) like  ?");

最佳答案

您需要使用'\'进行转义。这里\是转义字符。
您可以使用String.replace'替换为\'

Java中的EscapeSequence:

\ b    /* \u0008: backspace BS */
\ t    /* \u0009: horizontal tab HT */
\ n    /* \u000a: linefeed LF */
\ f    /* \u000c: form feed FF */
\ r    /* \u000d: carriage return CR */
\ "    /* \u0022: double quote " */
\ '    /* \u0027: single quote ' */
\ \    /* \u005c: backslash \ */

Doc Link

07-24 09:46
查看更多