【发布时间】:2013-07-18 20:37:51
【问题描述】:
有一个使用 SQL DDL 脚本创建的表,其中有一列类型为 _INT8。如果我尝试将其映射到 long(即 Postgres INT8),它会在堆栈的末尾抛出。
Caused by: org.hibernate.HibernateException: Wrong column type in [schme_name].[table_name] for column [column_name]. Found: _int8, expected: int8
at org.hibernate.mapping.Table.validateColumns(Table.java:373)
at org.hibernate.cfg.Configuration.validateSchema(Configuration.java:1265)
at org.hibernate.tool.hbm2ddl.SchemaValidator.validate(SchemaValidator.java:155)
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:508)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1750)
at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:94)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:920)
如果我尝试将其映射到 long[](或任何其他数组类型)而不是 Found: _int8, expected: bytea
如何使用 Hibernate 将 Postgres 的 _INT8 映射为 Java 类型?
【问题讨论】:
标签: java hibernate postgresql jpa orm