2009-10-10 4 views

Répondre

12

Vous pouvez le faire lorsque vous spécifiez explicitement le mappage dans une classe de domaine comme described here:

class Book { 
    static mapping = { 
     table name:"books", schema:"dbo" 
    } 
} 
+0

C'est génial. Merci pour ce lien. GORM va-t-il aussi créer le schéma? Si non, quelle est la meilleure pratique dans Grails entourant ce type de conception? –

+0

Je n'ai pas vraiment utilisé de schéma comme celui-ci, mais il ne devrait pas être difficile à trouver par tring. –

+0

Je vais essayer. J'apprécie vos commentaires. Je vous remercie. –

0

La réponse donnée par Michael Borgwardt est techniquement correct, mais il faut savoir que de Grails 1.3.4, là-bas est toujours un bug où l'utilisation de l'héritage table-par-classe toutes les classes enfants ignorera la définition du schéma.

Une solution possible consiste à nommer la table entière et à inclure le schéma ainsi: "dbo.books", mais cela peut entraîner des problèmes d'intégrité référentielle; GORM va essayer de construire un nom qui contient trop de "." caractères, et PostgreSQL (pour un) pense que vous essayez de créer l'intégrité référentielle du serveur de bases de données croisées, ce qui n'est pas supporté.