将pom.xml中的hsqldb依赖项从1.8.x升级到2.0.0+后,我开始收到此错误:
org.hsqldb.HsqlException: length must be specified in type definition: VARCHAR
显然,Hibernate根据HSQLDB 2要求生成了错误的CREATE TABLE表达式。我应该使用不同版本的Hibernate吗?哪一个? (但是,我宁愿暂时坚持使用3.5.6)。或者也许有一种方法可以在后向兼容模式下使用HSQLDB 2?
谢谢。
答案 0 :(得分:6)
我建议您使用Maven上的最新HSQLDB 2.2.6。
您可以使用诸如
之类的URL覆盖VARCHAR大小强制执行jdbc:hsqldb:mem:test;sql.enforce_size=false
对于Hibernate版本,使用Hibernate 3.6.x系列的更新版本的HSQLDialect.java可以实现更好的兼容性。或者只升级到最新的3.6.8
答案 1 :(得分:0)
我想回答这个错误
org.hsqldb.HsqlException: length must be specified in type definition: VARCHAR
该错误告诉我们我们在SQL语句中使用NVARCHAR
或VARCHAR
而不指定长度
因此只需确保为
之类的列指定长度即可NVARCHAR(255)
希望这对您有帮助