首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MySQL查询Java中使用撇号

问在MySQL查询Java中使用撇号
EN

Stack Overflow用户
提问于 2014-01-11 10:55:36
回答 1查看 55关注 0票数 0

所以我遇到了一个关于MySQL的小问题。我有一个服务,允许管理员禁止用户,并给出他们被禁止的原因。此服务完全是用java编写的……虽然我可以使用PhP服务器并使用其中的MySQL功能来解决此问题...我觉得我想把我所有的MySQL功能都放在一个环境中。

问题出现在给出理由的能力上,通常管理员会给出一个理由,比如“你被禁止了:哀悼鲍勃的城堡”(或类似的东西)。正如所注意到的,‘’引发了问题,因为它们是用来在MySQL中表示字符串的。

在Java环境中有什么解决方案吗?

EN

回答 1

Stack Overflow用户

发布于 2014-01-11 12:05:31

最简单的解决方案可能是Commons Lang StringEscapeUtils.escapeSql(String)。另一种解决方案是使用PreparedStatement并绑定参数(有些人更喜欢第二种方法,因为它通常伸缩性更好,性能更快)。

代码语言:javascript
复制
// From the JavaDoc on PreparedStatement
PreparedStatement pstmt = con.prepareStatement("UPDATE EMPLOYEES "
                                 + "SET SALARY = ? WHERE ID = ?");
pstmt.setBigDecimal(1, 153833.00)
pstmt.setInt(2, 110592)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21057999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档