Привет, у меня проблема с изменением разделов таблицы с помощью JDBI. Вот пример запроса, который я пытаюсь выполнить:
ALTER TABLE table1 DROP PARTITION P_1
Это отлично работает в MySQL при удалении раздела «P_1» из таблицы «table1».
Я реализовал это в своем java-коде следующим образом:
@SqlUpdate("ALTER TABLE table1 DROP PARTITION :partition;")
public void deletePartition(@Bind("partition") String partition);
И вызовите эту функцию как таковую
deletePartition("P_1")
Однако это приводит к следующей ошибке:
Причина: org.skife.jdbi.v2.exceptions.UnableToExecuteStatementException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: у вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, на предмет правильного синтаксиса для использования рядом с «P_1» в строке 1 [утверждение: «ИЗМЕНИТЬ ТАБЛИЦУ table1 DROP PARTITION: раздел;», расположенный: «ALTER TABLE table1 DROP PARTITION: раздел; ", переписано:"/* HiveDropBoxDBI.deletePartition */ ALTER TABLE table1 DROP PARTITION ?;", аргументы: {positional:{}, named:{partition:'P_1'}, finder:[]}]
Эта функция не поддерживается? Или я что-то упустил в своем синтаксисе?
Спасибо