Bases de Données / Databases

Site Web de l'équipe BD du LIP6 / LIP6 DB Web Site

Outils pour utilisateurs

Outils du site


site:enseignement:documentation:h2

SGBD H2

H2 est un système de gestion de base de données relationnelle écrit en Java.

Instructions

Le système H2 est écrit en Java qu'il faudra installer avant si nécessaire: https://java.com/en/download/help/download_options.xml

Télécharger et installer H2

https://www.h2database.com/html/main.html et suivez les instructions d'installation.

  1. uniquement Windows: Windows Installer installe H2 comme programme dans le répertoire c:\Program Files ou C:\Program Files (X86)
  2. Window et Linux: vous pouvez aussi télécharger le fichier All platforms qui est une fichier Zip que vous pouvez décompresser. Le répertoire créé contient un sous-répertoirebin avec toutes les commandes H2.

Créer une base de données vide

Attention: la nouvelle version de H2 demande la création de la base avant le lancement de la console.

Méthodé de création 1:

La première méthode consiste à Lancer H2 (voir ci dessous) et choisir dans l'icône H2 affiché dans le menu “Create a new database” (click bouton droit).

La fenêtre affiché permet ensuite d'indiquer le chemin vers la base de données (attention: vous devez avoir le droit de créer le fichier).

Par exemple, vous pouvez mettre “~/td7” qui crée la base de donnée dans votre répertore HOME (~). Il faut ensuite indiquer un utilisateur et un mot de passe non-vide.

Méthodé de création 2:

Exemple dans une console cmd Windows :

  > java -cp 'C:\Program Files (x86)\H2\bin\h2-1.4.199.jar'  org.h2.tools.Shell
  Welcome to H2 Shell
  Exit with Ctrl+C
  [Enter]   
  URL       jdbc:h2:~/test
  [Enter]   org.h2.Driver
  Driver    org.h2.Driver
  [Enter]   
  User      sa
  Password  
  Type the same password again to confirm database creation.
  Password  
  Connected
  
  sql> quit
  Connection closed
  

Dans une installation locale il faut remplacer

  java -cp C:\Program Files (x86)\H2\bin\h2-1.4.199.jar org.h2.tools.Shell

par le chemin correspondant. Par exemple:

  java -cp C:\Users\toto\Desktop\h2-1.4.199\bin\h2-1.4.199.jar org.h2.tools.Shell

ou

  java -cp /home/toto/h2-1.4.199/bin/h2-1.4.199.jar org.h2.tools.Shell

Le mot de passe peut être vide et vous pouvez changer le nom de la base (test). La commande génère un fichier dans votre répertoire HOME (~).

Tutoriel H2

Lancer H2

Linux

 cd h2-2019-10-14/bin
 chmod +x h2.sh
 ./h2.sh

Windows

  1. Naviguer dans le répertoire h2-2019-10-14/bin
  2. Exécuter h2.bat

(ou chercher “H2 Console” et exécuter)

La commande lance le serveur et ouvre une fenêtre de connexion:

Cliquer sur Connecter

Remarque : en cas d'erreur de connexion, vérifier que la configuration est “Generic H2 (Embedded)” et le champ URL JDBC contient bien jdbc:h2:~/test

Chargement de données

Copier/coller le contenu du fichier sql avec les données d'une base de données correspondant à la séance de TME.

Cliquer sur Exécuter

Poser des requêtes SQL

Cliquer sur Effacer et écrire vos requêtes !

Par exemple :

   SELECT * FROM Astre;

Différences entre Oracle et H2

H2 et Oracle n'ont pas le même format par défaut pour les dates.

Oracle H2
Dates '30/12/2015' ou to_date('30-12-2015', 'dd-mm-yyyy') '2015-12-30'

Par exemple :

  • Oracle : where dateFin > to_date('21-02-2014', 'dd-mm-yyyy');
  • H2 : where dateFin > '2014-02-21');

Divers

Le site du SGBD H2 est http://www.h2database.com/

site/enseignement/documentation/h2.txt · Dernière modification: 15/11/2021 18:50 par amann