Est-ce possible de définir une sorte de mappage dans les grails, donc CREATE TABLE
est remplacé par CREATE MEMORY TABLE
pour des domaines de grails particuliers?Utiliser HSQL MEMORY TABLE avec des grails
Répondre
Si vous voulez faire cela pour toutes les tables, vous pouvez créer un dialecte personnalisé et remplacer getCreateTableString()
mais il n'y a aucun moyen de connaître le nom de la table actuelle, donc il peut être appliqué de manière sélective. Mais vous pouvez adopter l'approche que j'ai suggérée ici: grails limited table creation. Vous devez remplacer generateSchemaCreationScript()
et si vous trouvez la ou les tables que vous recherchez, vous pouvez remplacer la chaîne 'create table' par 'create memory table'.
Les instructions create table sont générées par la fonction hbm2ddl de Hibernate. Je ne pense pas qu'il existe un moyen de configurer la syntaxe de l'instruction create autre que le nom de la table elle-même et les colonnes.
Vous devez gérer manuellement la création de schéma en utilisant un plugin tel que Autobase ou Liquibase (ou tout ce qui vient dans Grails 1.4 pour gérer les migrations DB).
Beau travail Burt, cette classe de configuration personnalisée est une bonne approche. – leebutts