我的问题似乎很简单,但我很难解决它 我想使用Hibernate通过本机sql查询改变PostgreSQL序列(也欢迎使用其他解决方案):
Query query = getSession()
.createSQLQuery("ALTER SEQUENCE users_id_seq RESTART WITH ?")
.setInteger(0, 1);
query.executeUpdate();
但是我收到了这个错误:
Hibernate:
ALTER SEQUENCE users_id_seq RESTART WITH ?
hibernate.engine.jdbc.spi.SqlExceptionHelper - SQL Error: 0, SQLState: 42601
hibernate.engine.jdbc.spi.SqlExceptionHelper - ERROR: syntax error at or near "$1"
答案 0 :(得分:1)
最好我知道,你不能准备这个陈述。
如果hibernate允许,则模拟准备好的语句,而不是将其发送到服务器。如果没有,请清理变量并直接发出最终语句。
或者,将其包装在具有动态SQL的函数中: