我的应用程序动态创建表,并且我不知道如何使用Spring jdbc读取表而不用将其硬编码到字符串查询中。我在想是这样的:Spring JDBC在运行时指定查询表
jdbcTemplate.query("SELECT * FROM ?", new Object[] { tableName }, new TableMapper());
但春天不喜欢问号:-(
感谢所有帮助
我的应用程序动态创建表,并且我不知道如何使用Spring jdbc读取表而不用将其硬编码到字符串查询中。我在想是这样的:Spring JDBC在运行时指定查询表
jdbcTemplate.query("SELECT * FROM ?", new Object[] { tableName }, new TableMapper());
但春天不喜欢问号:-(
感谢所有帮助
尝试String query = String.format("SELECT * FROM %s", tableName);
解释一个字! :Spring
不是这里要指责的问题,从数据库驱动程序一路抛出异常。PreparedStatement
不允许参数化表名,您可以应用?
来查询参数LY。如the other answer所述,解决此问题的唯一方法是将其插入到查询字符串中。