2013-08-28 30 views
1

我试图增加加密列的大小Grails的Jasypt插件栏MAXSIZE一直为MySQL

static mapping = { 
     col1 type: GormEncryptedStringType 
} 

static constraints = { 
     col1(nullable:true) 
} 

它总是产生在MySQL的一个varchar(255)创建VARCHAR而不是文本,而我想把它当作一个文本类型。我尝试添加maxSize:65000,但它会创建varchar(65000)而不是文本。

该字段可以包含大量数据,理想情况下我希望它是LONGTEXT字段。

对于其他非加密字段,我成功地使用了type:'text',它工作但我很难过,因为这是一个加密字段,我不能添加另一种类型。

任何帮助,非常感谢。

回答

1

Type是Hibernate类型。除此之外,尝试添加sqlType,顾名思义,它是底层的SQL列类型。

static mapping = { 
     col1 type: GormEncryptedStringType, sqlType:'TEXT' 
} 

此外,根据您的 'SQL类型',也可以加length更改列大小

static mapping = { 
     col1 type: GormEncryptedStringType, sqlType:'varchar', length:400 
}