如何使用java和j-connector插入带有撇号的字符串作为mysql数据库字段的值?
我有一个带有“username”字段的数据库,我用Java插入值输入数据库。我试图输入用户名“l'ornitorinco”,但程序无法运行(崩溃)。我知道,当我插入一个带有phpMyAdmin的撇号字符串,比如“l'ornitorinco”,它是以这种方式发送的“l'ornitorinco”。我可能应该分析字符串并在适当的点插入撇号(for循环从0到string.length),但是有人知道更合适的方法吗?我读过一个为mysql设置字符串的方法,但我不记得了。您可以使用如何使用java和j-connector插入带有撇号的字符串作为mysql数据库字段的值?,java,mysql,string,Java,Mysql,String,我有一个带有“username”字段的数据库,我用Java插入值输入数据库。我试图输入用户名“l'ornitorinco”,但程序无法运行(崩溃)。我知道,当我插入一个带有phpMyAdmin的撇号字符串,比如“l'ornitorinco”,它是以这种方式发送的“l'ornitorinco”。我可能应该分析字符串并在适当的点插入撇号(for循环从0到string.length),但是有人知道更合适的方法吗?我读过一个为mysql设置字符串的方法,但我不记得了。您可以使用PreparedSta
PreparedStatement
,因为它的setString()
方法允许您在值上包含撇号,这比玩单引号/双引号游戏简单得多
查看更多信息。希望有帮助 您可以使用
PreparedStatement
,因为它的setString()
方法允许您在值上包含撇号,这比玩单引号/双引号游戏简单得多
查看更多信息。希望有帮助 是否将转义字符\帮助?@BoykeFerdinandes我不明白你的意思是什么它是这样的
https://stackoverflow.com/questions/3844595/how-can-i-make-java-print-quotes-like-hello#:~:text=打印(%22%5C%22你好%5C,r%22%20和%20%22%5Cn%22
但是你的答案很好~will escape character\help?@BoykeFerdinandes我不明白你的意思是什么https://stackoverflow.com/questions/3844595/how-can-i-make-java-print-quotes-like-hello#:~:text=打印(%22%5C%22你好%5C,r%22%20和%20%22%5Cn%22但是你的答案很好~
String queryString = "insert into username values (?)";
query = con.prepareStatement(queryString);
query.setString(1, "l'ornitorinco");
query.executeUpdate();