J'ai suivi le guide de démarrage rapide sur le site Web de la base de données h2 pour créer une nouvelle base de données une table et insérer des données. L'application fonctionne sans problème et peut lire et écrire dans la base de données sans problème.
Quickstart h2
- Ajoutez le h2 * .jar au chemin de classe (H2 n'a pas de dépendances)
- Utilisez la classe de pilote JDBC: org.h2.Driver
- L'URL de la base de données jdbc: h2: ~/test ouvre le test de la base de données dans votre répertoire personnel
- Une nouvelle base de données est automatiquement créée
Maintenant, je veux regarder les données avec la console web-frontend h2 mais chaque fois que j'essaie d'ouvrir ma base de données, cela crée simplement une nouvelle base de données.
Après une longue recherche, j'ai remarqué que mon Java-App, qui utilise la version embarquée h2, écrit dans un fichier appelé ".mv.db" tandis que l'interface Web crée le fichier ".h2.db" (qui est beaucoup plus logique pour moi)
De plus, lorsque mon application écrit dans la base de données, elle utilise des quantités d'espace extrêmes (80 Mo pour environ 600 valeurs entières)
Comment puis-je utiliser l'extension ".h2.db" pour ma base de données intégrée?
Ceci est désormais automatiquement activé depuis la version 1.4.177 Beta (2014-04-12).
Vous pouvez le désactiver en ajoutant ;MV_STORE=FALSE
et ;MVCC=FALSE
à l'URL de la base de données
Par défaut, l'option MV_STORE est activée, elle utilise donc le nouveau stockage MVStore. Le paramètre MVCC est par défaut défini sur les mêmes valeurs que le paramètre MV_STORE, il est donc également activé par défaut. Pour les tests, les deux paramètres peuvent être désactivés en ajoutant "; MV_STORE = FALSE" et/ou "; MVCC = FALSE" à l'URL de la base de données.
Vous devez nous dire quelle version exacte de H2 vous utilisez.
. mv.db - les fichiers sont pour le type de stockage à venir/bêta "MVStore" pour H2.
Voici du http://www.h2database.com/html/changelog.html :
Nouveau moteur de table "org.h2.mvstore.db.MVTableEngine" qui utilise en interne le MVStore pour conserver les données. Pour l'essayer, ajoutez "; DEFAULT_TABLE_ENGINE = org.h2.mvstore.db.MVTableEngine" à l'URL de la base de données. Ceci est encore très expérimental et de nombreuses fonctionnalités ne sont pas encore prises en charge. Les données sont stockées dans un fichier avec le suffixe . Mv.db .