Système de Gestion de Bases de Données
Introduction aux SGBD (1970)
Généralités
Une BD est un ensemble structuré de données accessibles par l’ordinateur pour satisfaire simultanément plusieurs utilisateurs en un temps opportun. ( 1982 : Delobel ) ( Merise : Tardieu )
o Ensemble ( Produit cartésien )
o Hétérogène
o Semi structuré
o Accessible : à l’aide de requêtes
o Simultanément : synchronisation
o Temps opportun : ne pas attendre trop longtemps une réponse
Une BD peut être vue comme une collection d’informations structurées modélisant une « entreprise » et mémorisées sur un support permanent. ( Persistance )
Livres de références :
o « Des structures aux BD » de C. Carrez édition DUNOD 1990
o « L’art des BD » de Thiranda édition EYROLLES 1986
o « Ingénierie des données » de Pichat édition MASSOW
o Delobel
o Adiba
Une base de données est stockée logiquement en un seul endroit contrairement au fichier.
Action possibles avec une BD :
o Modification
o Requêtes
o Insertion
o Suppression
- Historique
o 1939 : ENIAC
o 1943 : Cerveau artificiel ( Von Neuman )
o 1960 : Centralisation ( Travail par JOB )
o 1970 : Transactionnel ( Communication utilisateur / Processus )
o 1980 : Informatique personnel ( 1er pc : 1984 ) puis connexion ( 1er réseau )
o 2000 : Internet / coopération de BD distantes
- Description
o Liens entre données
o Cohérence des données
o Souplesse d’accès
o Sécurité
o Droit d’accès
o Synchronisation
o Sécurité de sauvegarde des données
o Partage
o Performance
o Indépendance des données
o Physique
o Logique
Structures :
VEHICULE ( N° Véhicule, Marque, Type, Couleur )
PERSONNE ( N° SS, Nom, Prénom )
PROPRIETAIRE ( N° SS, N° Véhicule, date )
Vue :PERSONNE ( N° SS, Prénom, Nom, N° Véhicule )
- Fonctions du SGBD
o Organisation
o Langage de définition de données ( LDD ), ex : en SQL, CREATE TABLE
o Manipulation
o Langage d’interrogation, ex : SQL
o Langage de programmation, ex : VBA, COBOL, C…
Pour faire les traitements autres que les 5 agrégats SQL ( Max, Min, Sum, Average, Count )
o Gestionnaire
TP Base de données : Le cirque
- SELECT DISTINCT ( NATURE ) FROM NUMEROS ;
- SELECT NOCAMION, VOLUME FROM ACCESSOIRES ORDER BY NOCAMION ASC, VOLUME DESC;
- SELECT NOMACCESSOIRE FROM ACCESSOIRES WHERE COULEUR=’ROUGE’ AND VOLUME <0,3;
- SELECT NOM ACCESSOIRE FROM ACCESSOIRES WHERE VOLUME BETWEEN 0,3 AND 0,6;
- SELECT NOMACCESSOIRE FROM ACCESSOIRES WHERE NOATELIER=NOCAMION;
- SELECT DISTINCT ( ACCESSOIRE ) FROM UTILISATION, PERSONNEL, WHERE UTILISATEUR = NOM AND ROLE = ‘JONGLEUR’;
- SELECT DISTINCT ( ACCESSOIRE ) FROM UTLISATION WHERE ( SELECT COUNT ( DISTINCT ( TITRE DE NUMERO ) ) FROM UTILISATION GROUP BY ACCESSOIRE ) >1;
SELECT ACCESSOIRE FROM UTILISATION GROUP BY ACCESSOIRE HAVING COUNT ( DISTINCT ( TITRE DE NUMERO ) ) >1;
- SELECT NOCAMION FROM ACCESSOIRES A, UTILISATION U, PERSONNEL P WHERE A.NOMACCESSOIRE = U.ACCESSOIRE AND U.UTILISATEUR = P.NOM AND P.ROLE = ‘JONGLEUR’;
- SELECT COUNT ( DISTINCT ( TITRE DE NUMERO ) ) FROM NUMEROS;
- SELECT COUNT ( DISTINCT ( TITRE DE NUMERO ) ) FROM UTILISATION WHERE ACCESSOIRE = ‘BALLE’ OR ACCESSOIRE = ‘BALLON’;
OU
WHERE ACCESSOIRE IN ( ‘BALLE’, ‘BALLON’ )
- SELECT SUM ( VOLUME ), AVG ( VOLUME ) FROM ACCESSOIRES;
- SELECT ACCESSOIRE FROM UTILISATION GROUP BY ACCESSOIRE HAVING COUNT ( DISTINCT ( TITRE DE NUMERO ) ) = ( SELECT COUNT ( * ) FROM NUMEROS );
- SELECT NOMACCESSOIRES FROM ACCESSOIRES WHERE NOMACCESSOIRES NOT IN ( SELECT DISTINCT ACCESSOIRE FROM UTILISATION );