ip6*_*696 6 java oracle postgresql hibernate jpa
我有一个带有BLOB列的实体:
@Lob
@Column(name = "SRC")
private byte[] src;
Run Code Online (Sandbox Code Playgroud)
我的应用程序使用两个数据库:Oracle 和 PostgreSQL。当我按照上面所写的那样使用 Oracle 启动应用程序时,一切正常,但是当我使用 PostgreSQL 启动时,出现错误:
Caused by: org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: wrong column type encountered in column [src] in table [catalogs]; found [bytea (Types#BINARY)], but expecting [oid (Types#BLOB)]
Run Code Online (Sandbox Code Playgroud)
之后我在谷歌上阅读了文章和建议并修复了它:
@Lob
@Type(type="org.hibernate.type.BinaryType")
@Column(name = "SRC")
private byte[] src;
Run Code Online (Sandbox Code Playgroud)
现在它在 PostgreSQL 上工作得很好,但在 Oracle 上我遇到了异常:
Caused by: org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: wrong column type encountered in column [src] in table [catalogs]; found [blob (Types#BLOB)], but expecting [raw(255) (Types#VARBINARY)]
Run Code Online (Sandbox Code Playgroud)
我应该怎么做才能使其在两个数据库上都工作?
PS我对CLOB也有类似的问题
| 归档时间: |
|
| 查看次数: |
1383 次 |
| 最近记录: |