2012-02-21 61 views
1

我有一個我創建的小型grails服務,我試圖在模型的成員上使用類型:'text'。然而,我總是看到這個字段是varchar(255),儘管我已經刪除了數據庫並重新創建了它。使用hibernate基本類型的Grails

我主要有:

class eventParameter{ 
    static belongsTo = [logEvent:LogEvent] 
    String name 
    String value 

    static constraints = { 
     name blank:false 
     value blank:false 
    } 
    static mapping = { 
     value type:'text' 
    } 
} 

沒有人有任何想法,爲什麼這不會產生正確類型的列?

回答

0

要覆蓋基礎數據庫類型,請使用sqlType映射。例如:

static mapping = { 
    value sqlType:'text' 
} 

此外,檢查出Grails的手冊中的相關章節:5.5.2.10 Custom Hibernate Types

+0

這應該工作像你說的,我在發佈前都試過它。我再次嘗試,並且仍然以varchar(255)而不是列的文本結束。 – spowers 2012-02-23 16:35:36

+0

您使用了哪個數據庫?當您運行'grails schemaExport'時,生成的'target/ddl.sql'看起來像什麼? – ataylor 2012-02-23 16:47:59