TP1 : Présentation B.D., S.G.B.D. …. . Construire des tables….

Introduction : présentation des TPs BDD (objectifs)

Définitions importantes : B.D.D. et S.G.B.D.

BD : (ou BDD) base de Données : stock d’informations organisé et structuré de manière à :


SGBD :Les SGBD (Système de Gestion de Base de Données) permettent de naviguer dans ces données et d’extraire (ou de mettre à jour) les informations voulues au moyen de requêtes. C’est le logiciel qui gère les données.


Remarque : SGBDR : le R vient de relationnel, notion difficile à comprendre en début de formation, mais l’idée est :


Un classement des différents SGBD

Étapes avant de commencer à travailler sur un SGBD comme MySql

exemple de démarche pour étudier et réaliser une base de données

Exemple de cours

Modèle relationnel dans un base de données : Création des tables

Une table: c’est un objet abstrait, qui regroupe des données qui ont un rapport très précis entre elles.
Terminologie dans les Bases De Données

Une table est composée d’un nom, et d’un ensemble de propriétés (que l’on appelle champs) dont l’une d’elle (éventuellement plusieurs) a le caractère d’identifiant : la clé primaire.

Table , Champs, Clé primaire, Enregistrements

Note : Il est fortement conseillé d’écrire le nom des champs et de la table sans espace, sans caractère spécifique (lettres accentuées, espaces, virgules, ….). Le code SQL est ainsi plus facilement portable d’une base de données à une autre. (faire comme pour les noms de variables en programmation Java … ).

article : différence entre une colonne et un champ ? entre une ligne et un enregistrement ?

Modèle Entité-Association
cours Modèle Entité-Association


Dans une table, le premier champ (celui qui est souligné) est la clé primaire de la table :

introduction et présentation du SQL

Le SQL :

Définition :

SQL (Structured Query Language) est un langage informatique normalisé qui permet de réaliser des opérations sur des bases de données.
La partie langage de manipulation de données de SQL permet de rechercher, d’ajouter, de modifier ou de supprimer des données dans les bases de données.

Voici quelques ordres SQL et aspects du langage , mais tous ces ordres ne seront pas abordés ce semestre :

installation et présentation des outils

cd
atom .bashrc

Ajouter dans le fichier .bashrc de votre HOME

alias looping='wine /opt/looping-mcd/Looping.exe'
alias datagrip='/opt/DataGrip/bin/datagrip.sh'
alias pycharm='/opt/pycharm/bin/pycharm.sh'

Découverte du SGBDR MySQL

Remarque : l’objectif n’est pas de connaitre toutes les fonctionnalités et subtilités du logiciel MYSQL mais d’utiliser toutes les fonctionnalités les plus « classiques » que l’on retrouve dans les logiciel du même type.

Votre première Table sur Mysql :

mkdir s1bdd
cd s1bdd
touch tp1.sql
atom tp1.sql
mysql --user=votreLogin --password=JJMM --host=serveurmysql --database=BDD_votreLogin
## mot de passe: JJMM de votre date de naissance

documentation connection à mariadb

et sur mysql

mysql --version
mysql --help
-- Usage: mysql [OPTIONS] [database]
-- commande pour se connecter à mysql :
mysql --user=votreLogin --password=JJMM --host=serveurmysql  BDD_votreLogin

mysql --user=login --host=serveurmysql.iut-bm.univ-fcomte.fr --database=BDD_login --password=motdepasse 
-- autre solution  pour se connecter à mysql :
-- mysql -u votreLogin -h serveurmysql -p BDD_votreLogin
-- mot de passe: JJMM
-- solution plus rapide
-- mysql -u votreLogin -h serveurmysql -pJJMM BDD_votreLogin

Les commentaires en SQL commence par «» suivi d’un espace qui est normalisé ou éventuellement « # » qui est admis. Penser à CTRL MAJ / sur les éditeurs.


En suivant la documentation sur un lien de OVH, on trouve l’instruction ci-dessous :
mysql --host=serveur --user=utilisateur --port=port --password=password nom_de_la_base.
Chercher sur internet le numéro de port et tester.
Tester avec des ` ou des " autour du mot de passe.


Prendre des Notes (en commentaires) dans vos fichiers SQL (tp1.sql) pour garder une trace des TP, vous pourrez utiliser ces TPs lors des contrôles devant machine.

Commandes du S.G.B.D.R. MYSQL

help
source tp1.sql
exit
show tables; 
system ls
script SQL : exemple de commentaires


Ajouter dans le fichier tp1.sql les instructions ci-dessous pour créer la table etudiant et exécuter ces instructions (source tp1.sql)


Premières commandes SQL

Les commandes SQL se terminent par ;. Erreur classique, vous avez oublié le “;” et l’interpréteur SQL de mysql attend la fin de l’instruction SQL

  1. Créer une autre table « etudiant »
script SQL
  1. Afficher la structure d’une table
DESCRIBE etudiant;
  1. Insérer des enregistrements dans une table:
script SQL

NULL : non affecté, non disponible (différent de espace, 0 ou la chaîne de caractères vide "")
Il est possible de définir les champs que l’on veut remplir (ligne 1 et 5), à défaut il faut donner une valeur à chaque champ.

  1. afficher tous les enregistrements d’une table
SELECT * FROM etudiant;

Remarque : bien faire la différence entre « afficher les enregistrements d’une table » et « afficher la structure d’une table » dans un énoncé (contrôle)

  1. supprimer une table en début de script
DROP TABLE etudiant;

Placer cette instruction en début de script pour que vos modifications sur la table soit prises en compte à chaque rechargement du script SQL.

Modifier votre script dans votre fichier à chaque étape, l’objectif est de bien saisir les différences et les points communs entre « NOT NULL » « UNIQUE » et « PRIMARY KEY »

Pour ne plus autoriser un enregistrement avec un identifiant de l’étudiant NULL :

script SQL
  1. Modifier la table en ajoutant la contrainte NOT NULL

  2. Insérer les enregistrements précédents dans la table

  1. supprimer la table


Clé Primaire, champ unique, champ non “NULL”

  1. Modifier la table en ajoutant la contrainte UNIQUE, puis insérer les champs précédents
script SQL

  1. Modifier la table et insérer les champs précédents avec une clé primaire sur l’identifiant



clé primaire : bonne pratique

Définir de préférence les clés primaires à l’aide d’une instruction séparée en fin de table car :

script SQL : solution à utilisée par la suite
  1. Afficher comment créer la table à l’aide de la commande ci-dessous
SHOW CREATE TABLE  etudiant;


  1. Terminer votre script en supprimant la table si elle existe.
script SQL : supprimer une table si elle existe


Pour les plus rapides :

  1. ajouter un champ dans la table etudiant avec la date de naissance de chaque étudiant (nom du champ : date_naissance) et insérer quelques valeurs en vous aidant d’internet.


<!– https://pixees.fr/informatiquelycee/term/suj_bac/2022/sujet_02.pdf -

systeme https://pixees.fr/informatiquelycee/term/suj_bac/2022/sujet_05.pdf

https://pixees.fr/informatiquelycee/term/suj_bac/2022/sujet_06.pdf

https://nsi-snt.ac-normandie.fr/sujets-du-baccalaureat-2022-terminale-nsi ->