Un SGBD (Système de Gestion de Bases de Données) est un logiciel qui stocke des données de façon organisées et cohérentes. Un SGBDR (Système de Gestion de Bases de Données Relationnelles) est le type particulier de SGBD qui fera l’objet de ce cours. Il vous sera décrit plus tard ce qui fait qu’une bases de données est relationnelle.
Les bases de données les plus répandues sont :
Les SGBDRs sont généralement des serveurs auxquels des clients se connectent, il doivent supporter plusieurs connections simultanées. Les clients dialoguent alors avec le serveur pour lire ou écrire des donnés dans la base.
Le SQL, Structured Query Language, est un langage Standard permettant à un client de communiquer des instructions à la base de données. Il se décline en quatre parties :
A cela s’ajoute des extensions procédurales du SQL (appelé PL/SQL en Oracle). Celui-ci permet d’écrire des scripts exécutés par le serveur de base de données.
Dans une base de données relationnelle, les données sont stockées dans des tables. Une table est un tableau à deux entrées. Nous allons nous connecter à une base de données pour observer les tables.
Sous oracle, le client s’appelle SQL+, le compte utilisateur par défaut a pour login scott et password tiger.
La liste des tables s’affiche en utilisant l’instruction
SELECT TABLE_NAME FROM USER_TABLES
La méthode la plus simple pour s’initier à mysql est d’utiliser un kit de easyphp, wamp, etc. Vous disposez dans ce cas d’une option vous permettant d’ouvrir une console mysql.
La liste des bases de données stockées dans le serveur s’obtient avec l’instruction
show databases Database arbreGenealogique banque clients geometrie information_schema livraisons mysql performance_schema playlist repertoire secretariat sys
On se connecte à l’une des bases de données avec l’instruction
use nomdelabase
Une fois dans la base, on obtient la liste des tables avec l’instruction
show tables Tables_in_livraisons DETAILLIVRAISON FOURNISSEUR LIVRAISON PRODUIT PROPOSER
On affiche la liste des colonnes d’une table avec l’instruction
desc PRODUIT Field Type Null Key Default Extra numprod int NO PRI NULL nomprod varchar(64) YES NULL
Le contenu d’une table s’affiche avec l’instruction
SELECT * FROM PRODUIT numprod nomprod 1 Bocal de cornichons 2 Tube de dentifrice 3 Flacon de lotion anti-escarres 4 Déodorant fraîcheur 96 heures
Nous utiliserons pour commencer les types suivants :
int
number
(Oracle seulement)
real
varchar(taille)
ou
varchar2(taille)
(Oracle seulement).
Voici un exemple de création de table :
CREATE TABLE CLIENT( numcli int, nomcli varchar(32)); desc CLIENT; Field Type Null Key Default Extra numcli int YES NULL nomcli varchar(32) YES NULL
Voici un exemple d’insertion de données dans une table :
INSERT INTO CLIENT (numcli, nomcli) VALUES (1, 'Marcel'), (2, 'Gégé'); SELECT * FROM CLIENT; numcli nomcli 1 Marcel 2 Gégé
Attention, chaque commande SQL se termine par un point-virgule !
Une table se supprime avec l’instruction
DROP TABLE
.
DROP TABLE CLIENT;