1

我正在使用嵌入式 Apache Derby 数据库进行 JUnit 测试。我有一些 JPA 实体。有些实体包含这样的列:

@Column(nullable = false)
private String rawResults;

这一切都适用于嵌入式 Derby,直到我厌倦了在生成的查询中替换TEXTinto ,所以我制作了这样的列:LONGTEXTopenjpa-maven-plugin

@Column(nullable = false, columnDefinition = "LONGTEXT")
private String rawResults;

现在openjpa-maven-plugin正在生成LONGTEXT而不是TEXT. 但这仅在我跳过测试时才有效。

然后我运行我的测试并进行了 Derby,所以一切都失败了,并出现如下错误:

org.apache.openjpa.lib.jdbc.ReportingSQLException: TYPE 'LONGTEXT' does not exist. {stmnt 23146419 CREATE TABLE Assessment -- Assessment_JpaImpl

我正在使用 Derby 10.9.1.0,据我了解它不支持columnDefinition = "LONGTEXT". 这是正确的吗?或者我需要设置一些配置让 derby 支持这个属性?

4

1 回答 1

0

以下是 Derby 数据类型:http ://db.apache.org/derby/docs/10.9/ref/crefsqlj31068.html#crefsqlj31068

于 2012-10-17T20:25:26.720 回答