使用反斜杠逃脱报价

时间:2017-10-04 04:16:34

标签: java mysql eclipse

我正在尝试将数据插入MySQL,并且在这样做时,遇到了输入有单引号的错误,因此破坏了我的sql插入字符串。

这是我的代码行

                    String visitorSql = "INSERT INTO visitor" + "(encryptedEmail)" + "VALUES ('" + encryptedEmail.replace("'", "\\'")+"')";

语法错误是,

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''w+8L8%]/ò“VZ(R?cêíµ–ö\')' at line 1

我为了隐私而加密了电子邮件。任何其他想法我应该如何编码以逃避报价?

1 个答案:

答案 0 :(得分:2)

你必须用''(2个单引号)替换所有单引号(')以逃避它们。

String visitorSql = "INSERT INTO visitor(COLUMN_NM) VALUES ('" + encryptedEmail.replace("'", "''")+"')";