2013-04-24 21 views
2

我的應用程序動態創建表,並且我不知道如何使用Spring jdbc讀取表而不用將其硬編碼到字符串查詢中。我在想是這樣的:Spring JDBC在運行時指定查詢表

jdbcTemplate.query("SELECT * FROM ?", new Object[] { tableName }, new TableMapper()); 

但春天不喜歡問號:-(

感謝所有幫助

回答

4

嘗試String query = String.format("SELECT * FROM %s", tableName);

4

解釋一個字! :Spring不是這裏要指責的問​​題,從數據庫驅動程序一路拋出異常。PreparedStatement不允許參數化表名,您可以應用?來查詢參數LY。如the other answer所述,解決此問題的唯一方法是將其插入到查詢字符串中。