我想要一些CallableStatement类的方法来生成一个没有引号的命名参数查询。
String query = "update table ? ";
CallableSatement cs = connection.prepareCall(query);
cs.setString(1,"table_name");
cs.updateQuery();生成的查询如下所示:
update table 'table_name'我想要这个:
update table table_name没有引号!
请帮帮忙!
发布于 2013-08-03 10:27:29
你就是不能这么做。参数占位符只能用于值,而不能用于对象名称(如表名)。您需要通过将表名连接到update语句来动态构造查询。只需确保防止SQL注入。
还请注意,update table <whatever>不是有效的SQL。
发布于 2013-08-03 09:40:03
这个怎么样:
cs.setString(1,"'table_name'");Java只是做一个文字替换,所以如果你想要引号,你最好把它们放进去!
https://stackoverflow.com/questions/18031435
复制相似问题