2012-10-16 3 views
0

Je travaille sur un projet Grails et j'essaie d'utiliser la base de données H2 en mémoire pour enregistrer temporairement les données provenant de l'entrée de l'utilisateur. J'ai ajouté ce code: url = "jdbc:h2:memory" dans ma source de données pour configurer ma base de données. J'ai créé la classe de domaine qui contient deux propriétés. En exécutant le dbconsole dans mon navigateur, je suis capable de parcourir la base de données que j'ai créée et la table (qui correspond au nom de la classe). J'utilise le ClassName.save(flush:true) pour enregistrer les données dans la base de données en mémoire, mais cela génère une erreur, 'No property "database property name" of "class name" is found', et lorsque je vérifie la base de données dans la console, rien n'est sauvegardé.Comment enregistrer des données en utilisant la base de données H2 en mémoire?

Ai-je raté quelque chose? S'il vous plaît aider.

Répondre

2

Dans mon projet, la chaîne de configuration est différente:

dataSource { 
    dbCreate = "create-drop" // one of 'create', 'create-drop', 'update', 'validate', '' 
    url = "jdbc:h2:mem:devDb;MVCC=TRUE;LOCK_TIMEOUT=10000" 
} 

je crois, vous avez tort la « mémoire » et il vous manque le nom de base de données (dernière partie de la chaîne JDBC avant « ; »). Sous cette chaîne, vous pouvez également vous connecter à la base de données via "dbconsole".

Questions connexes