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

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
site:enseignement:documentation:h2 [26/11/2020 09:37] aminesite:enseignement:documentation:h2 [15/11/2021 18:50] (Version actuelle) – [Télécharger et installer H2] amann
Ligne 1: Ligne 1:
 {{indexmenu_n>10}} {{indexmenu_n>10}}
  
-===== Le SGBD H2===== +===== SGBD H2 =====
-===Pré-requis : Java===+
  
-Vérifier que java est installé  +H2 est un système de gestion de base de données relationnelle écrit en Java. 
-<code bash> +
-   java –version  +
-</code>+
  
-sinon télécharger le dernier jdk [[https://jdk.java.net/|java]]  (ou la jre [[https://www.java.com/fr/download/|java 8]] ) et l’installer.+==== Instructions ====
  
-**Seulement si nécessaire**, compléter le PATH+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]]
  
-//Sous Linux// :  +==== Télécharger et installer H2 ==== 
-<code bash> + [[https://www.h2database.com/html/main.html]] et suivez les instructions d'installation.
-   export PATH=${PATH}:chemin vers le dossier bin contenant java +
-</code>+
  
-//Sous Windows// +  - uniquement Windows: Windows Installer installe H2 comme programme dans le répertoire c:\Program Files ou C:\Program Files (X86) 
-<code bash> +  - Window et Linux: vous pouvez aussi télécharger le fichier //All platforms// qui est une fichier Zip que vous pouvez décompresserLe répertoire créé contient un sous-répertoire//bin// avec toutes les commandes H2. 
-   set PATH=%PATH%;chemin vers le dossier contenant java.exe +==== Créer une base de données vide ====
-</code>+
  
-===Téléchargement===+<fc #ff0000>Attention: la nouvelle version de H2 demande la création de la base avant le lancement de la console.</fc>
  
-Il y a 2 outils distincts un SGBD et une interface d’accès au SGBD.+=== Méthodé de création 1===
  
-Le SGBD [[https://www.h2database.com/html/main.html|H2]]. Voir aussi le [[https://www.h2database.com/h2.pdf|manuel H2]] en anglais. +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)
-**Télécharger** [[https://nuage.lip6.fr/s/FrjfmmocrYmDFit|h2-1.4.200.jar]] dans votre dossier de travail en exécutant les instructions suivantes :+
  
-<code bash> +{{ :site:enseignement:licence:2i009:sgbd-h2:capture_h2_1.png?200 |}}
-cd votre_dossier_de_travail +
-wget https://h2database.com/h2-2019-10-14.zip +
-unzip h2-2019-10-14.zip  +
-mv h2/bin/*.jar . +
-rm h2*.zip +
-</code>+
  
-===Démarrage du SGBD=== 
-On démarre le SGBD H2 en mode “serveur”. Ouvrir un terminal et aller dans votre dossier de travail. On utilise le port 9093 
  
-<code bash> +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)
-cd votre_dossier_de_travail +
-java -cp h2-1.4.200.jar org.h2.tools.Server -tcp -tcpPort 9093 & +
-</code>+
  
 +{{ :site:enseignement:licence:2i009:sgbd-h2:capture_h2_2.png?400 |}}
  
-Vérifier que le message suivant s’affiche :  +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.
-<code> +
-TCP server running at  tcp://127.0.1.1:9093 (only local connections) +
-</code>+
  
 +=== Méthodé de création 2: ===
 +Exemple dans une console cmd Windows :
  
-Vérifier que le serveur H2 est démarré afficher un processus nommé h2 :+    > 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
  
-<code bash> +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 (~). 
-ps -u | grep h2 | grep Server +
-</code>+
  
-cela affiche //java -cp h2-1.4.200.jar org.h2.tools.Server -tcp -tcpPort 9093//+[[http://www.h2database.com/html/tutorial.html|Tutoriel H2]]
  
-===Démarrage de l’interface d’accès===+==== Lancer H2 ====
  
-On démarre SQLWorkbench pour accéder au SGBD H2. Pour cela, ouvrir un terminal et aller dans votre dossier de travail : 
-<code bash> 
-cd votre_dossier_de_travail 
-java -jar sqlworkbench.jar 
-</code> 
  
-Compléter les champs suivants dans le profil de connexion : +=== Linux ===
-Driver: sélectionner H2 Database Engine puis  +
-Cliquer sur Manage Drivers (ou Edit the driver definition) et sélectionner H2 database Engine dans le panneau de gauche et cliquer sur le bouton avec une **icône de dossier**  +
-pour indiquer l’emplacement du fichier h2-1.4.200.jar+
  
-{{:site:enseignement:master:mlbda:tmes:sqlworkbench1.png?400|image}} 
  
-Revenir dans la fenêtre « Select Connection profile »+   cd h2-2019-10-14/bin 
 +   chmod +x h2.sh 
 +   ./h2.sh
  
-{{:site:enseignement:master:mlbda:tmes:sqlworkbench2.png?400|}} 
  
-Remplacer la valeur du champ URL par ceci pour charger la base existante tpmondial. +=== Windows ===
-Attention ne pas indiquer le suffixe .mv.db du fichier de la base. Exemples d’URL :+
  
-/* Si le nom de la base ne correspond à aucun fichier existant, alors une nouvelle base vide sera créée +  - Naviguer dans le répertoire h2-2019-10-14/bin 
-*/+  - Exécuter h2.bat
  
 +(ou chercher "H2 Console" et exécuter)
 +
 +
 +La commande lance le serveur et ouvre une fenêtre de connexion: 
 +
 +{{:site:enseignement:licence:2i009:documents-tme:h2_1.png?500|}}
 +
 +
 +
 +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 '' {{:site:enseignement:licence:2i009:documents-tme:h2_2.png?500|}}
 +
 +==== 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.
 +
 +   * TME7 : [[http://www-bd.lip6.fr/wiki/site/enseignement/licence/2i009/donnees-astronomiques| BD-données-astronomiques]], [[http://www-bd.lip6.fr/wiki/site/enseignement/licence/2i009/donnees-foofle-h2| BD-données-Foofle]]
 +   * TME5, 6 et 7 : [[http://www-bd.lip6.fr/ens/2I009_2015/bd-jo-v2_H2.html| BD-JeuxOlympiques-v2]]
 +   * TME4 : [[http://www-bd.lip6.fr/ens/2I009_2015/bd-jo-v1_H2.html| BD-JeuxOlympiques-v1]] 
 +
 +Cliquer sur **Exécuter**
 +
 +==== Poser des requêtes SQL ====
 +
 +Cliquer sur **Effacer** et écrire vos requêtes !
 +
 +Par exemple :
 +<code sql>
 +   SELECT * FROM Astre;
 +</code>
  
-   jdbc:h2:tcp://localhost:9093/~/TP1/tpmondial 
  
-Permet de charger la base se trouvant dans le fichier ~/TP1/tpmondial.mv.db+==== Différences entre Oracle et H2 ==== 
 +H2 et Oracle n'ont pas le même format par défaut pour les dates.
  
-Sous windows remplacer ~par le lecteur C: suivi de l'emplacement absolu du fichier contenant la basesans le suffixe du fichier.+^ ^ Oracle ^ H2 ^ 
 +| Dates | '' '30/12/2015' '' ou ''//to_date//('30-12-2015', 'dd-mm-yyyy')''  | '' '2015-12-30' '' |
  
-   jdbc:h2:tcp://localhost:9093/C:\Users\PRENOM\Documents\TP1\tpmondial+Par exemple  
 +  * Oracle ''...**where** dateFin > //to_date//('21-02-2014', 'dd-mm-yyyy');'' 
 +  * H2 ''...**where** dateFin > '2014-02-21');''
  
-Permet de charger la base tpmondial.mv.db se trouvant dans le dossier Documents\TP1 de l’utilisateur. +==== Divers ====
-Puis compléter le champ Username pour indiquer que la base Mondial a été créée par l’utilisateur nommé etu : +
-  * Username: etu +
-  * Le champ Password reste vide.+
  
 +Le site du SGBD [[http://www.h2database.com/| H2]] est [[http://www.h2database.com/]]
  
site/enseignement/documentation/h2.1606379858.txt.gz · Dernière modification : de amine