我将运行对无论是SQL Server或Oracle后端Grails应用。 我使用GORM作为一个ORM。
我要一个大的文本字段,同时支持数据库类型的方式映射。 在我的Grails领域类我有这样的:
class Note {
String content
static constraints = {
content nullable: false, blank: false
}
}
然后我声明看起来是这样的数据库表:
-- oracle
CREATE TABLE NOTE
(
id NUMBER(19, 0) NOT NULL,
version NUMBER(19, 0) NOT NULL,
content CLOB NOT NULL
);
-- SQL Server
CREATE TABLE NOTE
(
id NUMERIC(19, 0) NOT NULL,
version NUMERIC(19, 0) NOT NULL,
content NVARCHAR(MAX) NOT NULL
);
GORM在运行validate
模式启动时,我无法找到Oracle和SQL Server数据类型和格姆映射,允许存储或大文本字段,而格姆无法正常启动的组合。
我试过了:
设置类型
text
中mappings
,但这似乎并没有工作。 甲骨文抱怨期待的content
领域为类型的long
,和SQL Server想要一个类型的text
在这种情况下。设置
type
到clob
,其通过模式验证,但随后不允许我设置字段作为一个字符串值-格姆预计类型的数据CLOB
。
我应该如何配置我的数据库定义和格姆,使这项工作?