मेरे डोमेन वर्ग इस तरह दिखता है:मैं अपने स्ट्रिंग फ़ील्ड को क्लॉब में मैप करने के लिए Grails कैसे प्राप्त करूं?
package com.initech.tps
class Foo
{
String stuff
static mapping = {
// mapping to a legacy table as opposed to letting Grails create it
table name: 'FOO', schema: 'TPS'
id generator: 'sequence', params: [sequence: 'MY_SEQ'],
column: 'FOO_ID', sqlType: 'integer'
foo column: 'STUFF'
}
static constraints = {
stuff(nullable: true, maxSize: 40000)
}
}
मैं छाप Grails के तहत किया गया यह पता लगाने के लिए एक VARCHAR MAXSIZE बाधा के लिए एक बड़ा पर्याप्त मूल्य में मेरी गुजर के आधार पर करने के बजाय एक CLOB उपयोग करने के लिए होता है, बजाय मैं कंसोल में इस त्रुटि संदेश:
org.hibernate.HibernateException: Wrong column type in FOO for column STUFF.
Found: clob, expected: varchar(40000)
मैं मानचित्रण पर एक स्पष्ट sqlType की ज़रूरत है? मैंने maxSize के विभिन्न मानों का उपयोग करने की कोशिश की, और इसे बिना किसी अंतर के पूरी तरह से बाहर छोड़ दिया। sqlType: clob
या भी काम नहीं कर रहा है।
मैं आईबीएम डीबी 2-एक्सप्रेस का उपयोग कर Grails 1.3.7 पर हूं।
कि एक तरह से यह करने के लिए हो सकता है, मुझे लगता है कि। मैं वास्तव में एक उत्तर देखना चाहता हूं जो मुझे डोमेन ऑब्जेक्ट में एक स्ट्रिंग का उपयोग करने की अनुमति देता है। इसके लिए एक उपयोगकर्ता टाइप होना चाहिए। –