Maison >Java >javaDidacticiel >Pourquoi ma base de données en mémoire H2 affiche-t-elle une erreur « Table introuvable » après la création d'une table ?

Pourquoi ma base de données en mémoire H2 affiche-t-elle une erreur « Table introuvable » après la création d'une table ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-29 17:38:02792parcourir

Why does my H2 in-memory database show a

Table introuvable dans la base de données H2 en mémoire

Lors de la connexion à une base de données H2 en mémoire à l'aide de "jdbc:h2 : mem:test", les utilisateurs peuvent rencontrer une erreur "Table non trouvée" malgré la création précédente de la table. Cette anomalie est due au comportement par défaut de H2 consistant à fermer la connexion après des opérations DDL, ce qui rend la table inaccessible.

Solution :

Pour remédier à ce problème , modifiez l'URL de connexion en ajoutant ";DB_CLOSE_DELAY=-1" pour maintenir la base de données ouverte de manière persistante, empêchant ainsi la suppression de la table. L'URL modifiée devrait ressembler à ceci :

jdbc:h2:mem:test;DB_CLOSE_DELAY=-1

En incorporant cette modification, H2 conservera le contenu de la base de données jusqu'à la fin de la machine virtuelle, garantissant ainsi que toutes les tables créées restent intactes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn