J'ai récemment commencé à lire sur Grails et j'aimerais utiliser les schémas de sécurité SQL Server pour regrouper les tables générées par GORM. Cependant, je n'arrive pas à trouver une référence expliquant comment effectuer cette tâche. Je suis nouveau à Hibernate et je voudrais savoir si c'est possible. Je vous remercie.Dans Grails, comment déclarer un nom de schéma SQL Server pour une classe de domaine?
5
A
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
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é.
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? –
Je n'ai pas vraiment utilisé de schéma comme celui-ci, mais il ne devrait pas être difficile à trouver par tring. –
Je vais essayer. J'apprécie vos commentaires. Je vous remercie. –