0% ont trouvé ce document utile (0 vote)
55 vues3 pages

TP1 BDD

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1/ 3

Module BDD - L3 GTR Fév.

2024

TP1- Requêtes de création Tables /Index


Oracle : Système de Gestion de Bases de Données (SGBD) relationnel (SGBDR) édité par
Oracle Corporation (http://www.oracle.com/).

SQL - Structured Query Language : langage de définition, de manipulation et de contrôle


de bases de données relationnelles (standard ANSI depuis 1986) :

• "LDD (Langage de Définition de Données) : création, modification et suppression des


définitions des tables et index
• "LMD (Langage de Manipulation de Données) : ajout, suppression, modification et
interrogation des données
• "LCD (Langage de Contrôle de Données) : gestion des protections d’accès

Chaque instruction est terminée par (;). Pour insérer des Commentaires : /* … */.

Définition des données : SQL propose aux utilisateurs un ensemble d’instructions lui
permettant de créer des tables, des indexes, des vues et d’associer à une définition d’une
contrainte.
a. Création d’une table :
CREATE TABLE Nom-Table (Attribut1 TYPE, Attribut2 TYPE, …, contrainte_integrité1,
contrainte_integrité2, …);
Type des données :
• NUMBER(n) : Entier à n chiffres
• NUMBER(n, m) : Réel à n chiffres au total (virgule comprise), m après la virgule
• VARCHAR(n) : Chaîne de n caractères (entre ‘ ’) ; Char(n)
• DATE : Date au format ‘JJ-MM-AAAA’

b. Définitions des contraintes d’intégrité :


• Clé primaire : CONSTRAINT nom_contrainte PRIMARY KEY (attribut_clé [, attribut_clé2, …])
• Clé étrangère : CONSTRAINT nom_contrainte FOREIGN KEY (attribut_clé_ét)
REFERENCES table(attribut)

• Contrainte de domaine : CONSTRAINT nom_contrainte CHECK (condition)

c. Création d’index (accélération des accès)


CREATE [UNIQUE] INDEX nom_index ON nom_table (attribut [ASC|DESC], …);
CREATE INDEX ID1 ON Employé (NomE ASC);

Tel que : UNIQUE → pas de double


ASC/DESC → ordre croissant ou décroissant
d. Destructions :

• Pour supprimer une table : DROP TABLE nom_table;


• Pour supprimer un index : DROP INDEX nom_index;

Exemples de requêtes :
Contrainte d’intégrité : clé primaire / clé étrangère
SQL> Create table Departement(
2 NumDep number(4),
3 NomDep varchar (20),
4 Localisation varchar (15),
5 Constraint DepPK Primary Key (NumDep);

Contrainte clé étrangère:


SQL> Create table Employé(
2 NumEmp number(4),
3 NomEmp varchar (20) NOT NULL,
4 NumDep number(4),
5 Fonction varchar (10),
5 DateDéb Date,
6 Constraint EmpPK Primary Key (NumEmp),
7 Constraint DepFK Foreign Key (NumDep) References Department
(NumDep);

Description table créée : SQL> Desc Employé;

Contrainte NOT NULL: pour exprimer que l’attribut est obligatoire.

Contrainte Check : limiter les valeurs d’un attribut (seules certaines valeurs seront autorisées)

Contrainte Default : insérer une valeur par défaut.

SQL> Create table Film(


2 Code number(4),
3 Titre varchar (40) Not null,
4 Durée Integer CHECK (Durée >0 and Durée < 3),
5 Nationalité DEFAULT ‘Algérienne’,
6 NomRéalisateur varchar (30) CHECK (NomRéalisateur Like '%r'
7 Constraint CodPK Primary Key (Code);
Manipulation « 1 » – TP1 (Langage de définition de données)
Soit le modèle relationnel suivant relatif à la gestion des hôpitaux.

HOPITAL (CODE-HOPITAL, NOM_HOP, WILAYA, NB_SERVICE, DATE-CREATION)

SERVICE (CODE-SERVICE, NOM-SERVICE, BATIMENT, CODE-HOPITAL*)

CHAMBRE (CODE-HOPITAL, CODE-SERVICE, NUM-CHAMBRE, NUM-INF*, NB_LITS)

EMPLOYE (NUM- EMP, NOM-EMP, PRENOM-EMP, ADRESSE-EMP, TEL-EMP,


CODE-SERVICE*, CODE-HOPITAL*)

MEDECIN (NUM- MED, SPECIALITE, SALAIRE, NUM-EMP*)

INFIRMIER (NUM-INF, ROTATION, SALAIRE, NUM-EMP*)

PATIENT (NUM-PATIENT, NOM-PATIENT, PRENOM-PATIENT, ADRESSE-PATIENT,


TEL-PATIENT, MUTUELLE, CODE-SERVICE*)

HOSPITALISATION (NUM-PATIENT, DATE-HOSP, CODE-HOPITAL*,


CODE_SERVICE*, NUM_CHAMBRE*, LIT)

SOIGNE (NUM-PATIENT, NUM-MED)

Remarque : Les clés primaires sont soulignées et les clés étrangères sont marquées par *.

1- Créer les relations de base avec toutes les contraintes d’intégrité.

Vous aimerez peut-être aussi