Oracle
 sql >> Base de données >  >> RDS >> Oracle

Utiliser Oracle 10g CLOB avec Grails 2.0.1

Je pense J'ai trouvé une réponse dans la documentation sur Types d'hibernation personnalisés .

Cela semble fonctionner.

On dirait que je peux l'utiliser pour forcer mon type de base de données à être CLOB tout en gardant le type java une chaîne. En d'autres termes, peut-être type choisit à la fois un type DB et un type Java pour gérer le champ ? Mais sqlType donne un peu plus de granularité pour spécifier le type de base de données à utiliser.

Ainsi, l'exemple de classe Domain ci-dessus devrait ressembler à ceci dans mon cas :

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

J'ai glané ceci à partir d'une autre question StackOverflow sur le sujet (la question elle-même m'a éclairé, alors que la réponse acceptée m'a induit en erreur !):

J'ai passé une journée à essayer de comprendre tout cela, et c'était incroyablement frustrant. Alors peut-être que mes notes sur le sujet ici aideront quelqu'un d'autre à éviter cette expérience !

Et pendant que je garde des notes ici... ce message s'est avéré quelque peu utile en termes de dépannage pour obtenir plus de précisions dans mes mappages :

Un code intéressant à partir de celui-ci est reproduit ici :

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