• Aucun résultat trouvé

TP1 - Mise en place SQL/PostgreSQL/IntelliJ

N/A
N/A
Protected

Academic year: 2022

Partager "TP1 - Mise en place SQL/PostgreSQL/IntelliJ"

Copied!
12
0
0

Texte intégral

(1)

TP1 - Mise en place SQL/PostgreSQL/IntelliJ

Table des matières

1. PostgreSQL

1. Installation PostgreSQL

2. Initialisation de la base de données 1. Création d'un utilisateur

2. Création de la base de données 3. Modifier le mot de passe 3. Connexion à la base utilisateur 4. Quelques commandes

2. Java 3. IntelliJ

1. Configuration

2. Utilisation de la base de données 4. TP Stages

1. Sujet 2. Corrections

PostgreSQL

Installation PostgreSQL 11

Sous Debian 10 (Buster) :

sudo apt install postgresql-11

Pour les curieux : Installation dans un container Docker Sous Debian 10 (Buster) :

1. Installation Docker : Suivre les instructions sur la page offciel de page 2. Installation de PostgreSQL 11 :

1. Téléchargement de l'image, puis lancement d'un container

docker run --name postgres11 -p 5432:5432 -e POSTGRES_PASSWORD=mysecretpassword -d postgres:11

vérification

(2)

2. Exécution du conteneur

docker exec -ti postgres11 bash

Initialisation de la base de données

Création d'un utilisateur Connexion en mode admin :

su postgres psql

Création :

create role christophe password 'passwd' login;

Modification des droits :

alter role christophe set datestyle=sql,dmy;

Création de la base utilisateur

create database basechristophe owner christophe;

Rendre la base utilisateur privée

revoke connect on database basechristophe from public;

(3)

alter user david with password 'nouveaumdp';

\connect [nombase [nomuser]] permet de changer de base (et de user) (ou \c)

Quitter le mode admin

\q exit

Connexion à la base utilisateur

psql -h serveurpgsql -U login baselogin

psql -h localhost -U postgres -> va chercher la base 'postgres' superuser = postgres

Quelques commandes

\? aide sur les commandes pgsql

\h aide sur les commandes sql

\i requetes.sql -> exécute les requêtes du fichier requetes.sql

\q : se déconnecter

\d liste des tables

\d nomTable -> equivalent describe

\! pwd affiche le rep courant

\cd rep (la tabulation fonctionne)

\l liste des bases

\l+ infos supplémentaires : taille, tablespace…

\df liste des fonctions

\du liste des rôles (users)

Java

Pour utiliser IntelliJ, il faut installer jdk v8 minimum.

(4)

Sous Debian :

sudo apt install openjdk-11-jdk

Sous Windows :

des versions compilées d'openjdk se trouvent ici : https://adoptopenjdk.net/

versions officielles d'Oracle : https://www.oracle.com/java/technologies/, choisir par exemple : Java SE 11.0.9 (LTS)

IntelliJ

Installation

Licence étudiant :

Rendez-vous à l'adresse suivnate : https://www.jetbrains.com/community/education/#students Cliquez sur Apply now et remplissez le formulaire.

Installation :

Pour ces TP, il est important d'utiliser la version Ultimate car elle dispose du plugin Datagrid pour accéder aux bases de données.

Pour utiliser cette version, il vous faut obtenir une licence : L'installation se fait de la manière suivante :

Se rendre sur le site d'IntelliJ : https://www.jetbrains.com/idea/download/

Choisir sa plateforme : Windows, Linux ou Mac Choisir la version Ultimate

Installation : Sous Debian :

sudo tar xvfz ~/Téléchargements/ideaIU-2020.2.3.tar.gz

Première exécution :

cd idea-IU-202.7660.26/bin/

sh ./idea.sh

Create Desktop Entry

(5)

Ensuite, faire next jusqu'à l'écran d'activation suivant :

Renseignez votre adresse mail de l'université, votre mot de passe et cliquez sur Activate, la fenêtre d'accueil de l'application s'affiche.

(6)

Note : JetBrains conseille fortement de quitter l'application issue du premier lancement et d'utiliser le lanceur créé précédemment.

Configuration de la Data Source

Dans IntelliJ (version Ultimate uniquement), activer la vue Database à droite en cliquant sur l'onglet Database

(7)
(8)

Appuyer sur Test sql.PostgresConnection

Cliquer sur Download Driver Files Le test de connexion est OK

(9)

Cliquer sur OK

Utilisation de la base avec IntelliJ

La base de données est visible est manipulable depuis le volet "Database" situé à droite de la fenếtre du projet.

Dans ce paragraphe, nous allons :

lister les bases avec l'outil psql via la ligne de commande grâce au terminal, consulter les tables depuis le navigateur de bases de données,

interroger les tables depuis la console Création des tables

Vue terminal

(10)

1. Se connecter

psql -h localhost -U christophe basechristophe

2. Lister les bases

basechristophe=> \l

Vue Navigateur de base de données

Cette vue permet d'accéder aux bases, aux tables (strcuture et données)

(11)

En double-cliquant sur une table, la vue grille s'affiche. Elle permet d'ajouter ou supprimer directement des lignes dans la table avec les icônes '+' et '-'.

Vue console

La vue console permet d'exécuter des commandes sql. Elle s'obtient en cliquant sur l'icône "QL (Query Console) dans la vue "Database".

le résultat s'affiche en bas de l'IDE comme tous les résultats dans Intellij.

Dans cette vue, il est possible d'exécuter un script complet à condition de sélectionner toutes les lignes du script.

TP Stages

Sujet

(12)

Sujet

Corrections

Script de création des tables - Data - Requêtes

Références

Documents relatifs

Pour les composants avec traitement antibiotique de surface InhibiZone, disposez les cylindres et la pompe vides (après en avoir expulsé l’air et le liquide), sur un plateau

Dans la version Excel 2010, vous aurez la possibilité de considérer une liste d’informations comme une véritable base de données avec tous les outils indispensables

Contraintes normale et tangentielle Conditions aux limites en pression Théorème de l’action et de la réactionF. Contraintes dans un repère orthonormé Tenseur

Et une fois que vous aurez relancé votre pancréas pour résoudre la cause réelle de votre maladie, vous n’aurez plus de symptômes, et vous pourrez, avec l’aide de votre médecin,

ALTER TABLE employee ADD CONSTRAINT nom CHECK (lname <> ’’ AND fname <> ’’);. -- ALTER TABLE DROP CONSTRAINT

On peut les supprimer : SELECT DISTINCT nom , prenom FROM PERSONNE , JOUE WHERE id = idacteur ;.

– si un même type d’entité intervient plusieurs fois dans un même type d’association, on doit explicitement indiquer le rôle de chaque entité – si on a

NumEtud Nom Prenom Adresse DateNais Sexe NumCours NomCours NomProf NbHC NbHTD NbHTP NumEtud NumCours Note. E1