首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有引号的java setString

没有引号的java setString
EN

Stack Overflow用户
提问于 2013-08-03 09:38:37
回答 2查看 576关注 0票数 0

我想要一些CallableStatement类的方法来生成一个没有引号的命名参数查询。

代码语言:javascript
复制
String query = "update table ? ";
CallableSatement cs = connection.prepareCall(query);
cs.setString(1,"table_name");
cs.updateQuery();

生成的查询如下所示:

代码语言:javascript
复制
 update table 'table_name'

我想要这个:

代码语言:javascript
复制
update table table_name

没有引号!

请帮帮忙!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-03 10:27:29

你就是不能这么做。参数占位符只能用于值,而不能用于对象名称(如表名)。您需要通过将表名连接到update语句来动态构造查询。只需确保防止SQL注入。

还请注意,update table <whatever>不是有效的SQL。

票数 1
EN

Stack Overflow用户

发布于 2013-08-03 09:40:03

这个怎么样:

代码语言:javascript
复制
cs.setString(1,"'table_name'");

Java只是做一个文字替换,所以如果你想要引号,你最好把它们放进去!

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18031435

复制
相关文章

相似问题

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