0

我试过了session.createSQLQuery("ALTER TABLE People MODIFY address VARCHAR(1000);").executeUpdate();

但这会抛出org.hibernate.exception.SQLGrammarException: could not execute native bulk manipulation query

经过大量的谷歌搜索,建议使用 HQL 而不是 SQL 查询来进行批量更新。不知道如何使用 HQL 来实现这一点。似乎没有像样的 HQL 文档来更新表中的列长度。

非常感谢帮忙。

4

2 回答 2

0

我建议您通过session.connection().

请参阅第16.2.2.1 节。使用第 16 章存储过程的规则/限制。 Native SQL,它在您的ALTER查询附近。

其余的都取决于您的数据库供应商。祝你好运!

于 2010-05-19T14:25:39.730 回答
0

我找不到办法。看起来像一个限制。我添加了一个新字段并在启动时从旧字段复制了数据!

于 2010-08-17T08:03:11.550 回答