sql >> Databasteknik >  >> RDS >> Oracle

Använda Oracle 10g CLOB med Grails 2.0.1

Jag tror Jag hittade ett svar instoppat i dokumentationen om Anpassade vilotyper .

Det här verkar fungera.

Det verkar som att jag kan använda det för att tvinga min DB-typ att vara CLOB samtidigt som java-typen är en sträng. Med andra ord, kanske type väljer både en DB-typ och en Java-typ för att hantera fältet? Men sqlType ger lite mer granularitet för att ange vilken DB-typ som ska användas.

Så exempeldomänklassen ovan borde se ut så här i mitt fall:

class Address {
    String number
    String postCode
    static mapping = {
        postCode sqlType: 'clob'
    }
} 

Jag hämtade detta från en annan StackOverflow-fråga om ämnet (frågan i sig antydde mig, medan det accepterade svaret vilseledde mig!):

Jag tillbringade en dag med att försöka lista ut allt detta, och det var otroligt frustrerande. Så kanske mina anteckningar om ämnet här hjälper någon annan att undvika den upplevelsen!

Och medan jag håller anteckningar här... det här inlägget visade sig vara något användbart när det gäller felsökning av hur man blir mer specifik i mina mappningar:

Intressant kod från det återges här:

//CONFIG.GROOVY (maps a custom SixDecimal type)
grails.gorm.default.mapping = {
    'user-type'( type: SixDecimalUserType, class: SixDecimal )
}


  1. infoga data i MYSQL med PHP-array

  2. Inkrementell statistik används INTE av Query Optimizer

  3. Lista alla temporära tabeller i SQLite

  4. INNODB kaskad vid radering och uppdatering