如何在我的域类中存储一个巨大的字符串?

时间:2014-03-13 16:28:01

标签: oracle hibernate grails gorm

我正在Grails中创建一个Web应用程序,我有这个域类

String name
String query

static mapping = {        
    query type: "text"}

但是当我从Oracle中的另一个查询中提取查询时,它返回一个非常庞大的字符串,我得到了这个错误:

ORA-01461:只能插入LONG值才能插入LONG列

从我获取信息的数据库中,fiels是varchar(63760)

有什么想法吗?感谢

2 个答案:

答案 0 :(得分:0)

尝试将此添加到您的映射中:sqlType: 'clob'。所以你会得到以下结果:

String name
String query

static mapping = {        
    query type: "text", sqlType: "clob"
}

另请参阅this SO问题。

答案 1 :(得分:0)

Grails允许设置转换为mySQL大小的最大大小,因此如果它在Oracle中有效,你可以试试这个。

class Class {
String name;
String query;

static constraints = {
    query(maxSize: 2048000)
}

static mapping = {
    query type: "text"
}}