2013-04-24 2 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 не тот, кто виноват здесь, исключение отбрасывается полностью из вашего драйвера DB. PreparedStatement не позволяет параметризовать имя таблицы, вы можете применить ? к параметрам запроса на LY. Как отмечено в the other answer, единственный способ обойти это - вставить его в строку запроса.

Смежные вопросы