Sgbd oracle cours bd lf2 info
This presentation is the property of its rightful owner.
Sponsored Links
1 / 49

SGBD – Oracle Cours BD LF2 info PowerPoint PPT Presentation


  • 64 Views
  • Uploaded on
  • Presentation posted in: General

SGBD – Oracle Cours BD LF2 info. Plan. Chapitre I :Rappel Définition d’une BD Définition d’un SGBD Présentation du SGBD Oracle Chapitre II : Langage de base d’Oracle Langage de définition de données : LDD Langage de manipulation de données : LMD Langage de contrôle de données : LCD

Download Presentation

SGBD – Oracle Cours BD LF2 info

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Sgbd oracle cours bd lf2 info

SGBD – OracleCours BDLF2 info


Sgbd oracle cours bd lf2 info

Plan

  • Chapitre I :Rappel

    • Définition d’une BD

    • Définition d’un SGBD

    • Présentation du SGBD Oracle

  • Chapitre II : Langage de base d’Oracle

    • Langage de définition de données : LDD

    • Langage de manipulation de données : LMD

    • Langage de contrôle de données : LCD

  • Chapitre III : Langage procédural : PL/SQL

    • Introduction à PL/SQL

    • Les structures de contrôle

    • Interaction avec Oracle


Base de donn es

Base de Données

  • Définition de Base de Données

    • Une Base de Données(BD)

      Est un ensemble de données structurées modélisant un univers précis et accessible à plusieurs utilisateurs en même temps.

  • Objectifs de Base de Données

    • Éliminationde la redondance des données.

    • Indépendance entre les programmes et les données : on peut isoler le niveau utilisation (application) de l'organisation physique de données.

    • Intégration de données : intégration de toutes les données de l'entreprise dans un réservoir unique de données.


D finitions de syst me de gestion de base de donn es

Définitions de Système de Gestion de Base de Données

  • UnSystème de Gestion de Base de Données(SGBD)

    • Est un ensemble de programmes qui permettent à l'utilisateur d’une Base de Données

      • de la créer (LDD : Langage de Définition de Données),

      • de la manipuler (LMD : Langage de Manipulation de données)

      • et de la contrôler (LCD : Langage de Contrôle de Données).

  • Ex. : Oracle, Access, Sybase, Ingres, Informix, DB2, etc.


Oracle en bref

Oracle en bref

  • Oracle est un SGBD relationnel (Système de Gestion de Bases de Données) édité par la société Oracle Corporation (http://www.oracle.com), leader mondial des bases de données.

  • Sa fonction principale est de gérer d’une façon intégrée l’ensemble de données d’une entreprise et de les rendre accessibles à un nombre important d’utilisateurs en garantissant leur sécurité, leur cohérence et leur intégrité.

  • Oracle est un SGBD qui permet d’assurer :

    • La définition et la manipulation des données,

    • La cohérence des données,

    • La confidentialité des données,

    • L'intégrité des données,

    • La sauvegarde et la restauration des données,

    • La gestion des accès concurrents.


Oracle en bref1

Oracle en bref

  • Le dictionnaire de données Oracle représente le coeur de la base de données. Il s'agit d'un ensemble de tables systèmes contenant les informations relatives à la structure de la base de données :

    • Utilisateurs de la base (ainsi que leurs privilèges et leurs rôles),

    • Noms et caractéristiques des objets contenus dans la base (tables, vues, index, clusters, triggers, packages, ...),

    • Contraintes d'intégrité,

    • Ressources physiques allouées à la base,

    • ...

  • Le dictionnaire est créé au moment de la création de la base et est mis à jour. Il appartient à l'utilisateur SYS (l'administrateur de la base) et il est conservé dans le tablespace SYSTEM.


Sql structured query language

SQL : Structured Query Language

  • SQL est un langage pour les BDR. Créé en 1970 par IBM.

  • Principales caractéristiques de SQL :

    • Normalisation : SQL implémente le modèle relationnel.

    • Standard : Du fait de cette normalisation, la plupart des éditeurs de SGBDR intègrent SQL à leurs produits (Oracle, Informix, Sybase, Ingres, MS SQL Server, DB2, etc.). Ainsi, les données, requêtes et applications sont assez facilement portables d’une base à une autre.

    • Non procédural : SQL est un langage de requêtes qui permet à l’utilisateur de demander un résultat sans se préoccuper des moyens techniques pour trouver ce résultat (assertionnel). C’est l’optimiseur du SGBD (composant du moteur) qui se charge de cette tâche.

    • Universel : SQL peut être utilisé à tous les niveaux dans la gestion d’une BDR :

      • Langage de Définition de DonnéesLDD,

      • Langage de Manipulation de DonnéesLMD,

      • Langage de Contrôle de DonnéesLCD.


Sql structured query language1

SQL : Structured Query Language

  • Langage de définition de données LDD : permet la description de la structure de la base de données (tables, vues, attributs, index).

  • Langage de manipulation de données LMD : permet la manipulation des tables et des vues avec les quatre commandes : SELECT, INSET, DELETE, UPDATE.

  • Langage de contrôle de données LCD : comprend les primitives de gestion des transactions : COMMIT, ROLLback et des privilèges d’accès aux données : GRANT et REVOKE.


Architecture fonctionnelle d oracle

PL/SQL

SQL

Dictionnaire

de données

Noyau

Architecture fonctionnelle d’Oracle


Le mod le relationnel

Le modèle relationnel

  • Introduction

    Il consiste à percevoir l'ensemble de données comme des tableaux où chaque table représente une relation, au sens mathématique d'ensemble. L'ensemble des valeurs des tableaux représente le contenu de la base de données. Ce contenu peut être modifié en ajoutant des lignes, en supprimant des lignes ou en modifiant le contenu des lignes.

  • Définitions

    • Modèle: une représentation du monde réel. Cette représentation doit être simple et fiable.

    • Domaine : un ensemble de valeurs caractérisées par un nom.

      Ex. : Domaine (couleurs) = {bleu, rouge, blanc, …}

      : Domaine (noms) = {ali, salah, …}

    • Relation : est un ensemble d'enregistrements.

    • Enregistrement = n-uplet = tuple : une séquence ordonnées d'informations.


Le mod le relationnel1

Le modèle relationnel

  • Degré d’une relation : c’est le nombre de colonne (domaines) dans une relation

  • Ex. Degré de PRODUIT=3

RelationPRODUIT

Enregistrement

Domaine


Le mod le relationnel2

Le modèle relationnel

  • Caractéristiques des relations

    • Attribut : nom d'une colonne d'une relation.

      Ex.

      NUM_PDT

      DES_PDT attributs de la relation PRODUIT.

      COUL_PDT

    • Schéma de relation : nom de la relation suivi de la liste des attributs et de la définition de leurs domaines

      Ex. : PRODUIT (NUM_PDT, DES_PDT, COUL_PDT)

    • Clé primaire : un attribut (ou plusieurs) permettant d'identifier d'une façon unique un tuple d'une relation. Cet attribut doit avoir toutes ses valeurs différentes dans la relation R.

      Ex. : PRODUIT (NUM_PDT, DES_PDT, COUL_PDT)

      ETUDIANT (NUM_ET, NOM_ET, DATNAIS_ET, ADR_ET)


Le mod le relationnel3

Le modèle relationnel

  • Clé étrangère : soit la relation R1 (A, B, …, S, …).

    On dit que S est une clé étrangère de R1 s'il y a une relation R2 ayant pour clé primaire S.

    Ex. : PRODUIT (NUM_PDT, DES_PDT, COUL_PDT, #NUM_MAG)

    MAGASIN (NUM_MAG, ADR_MAG, TEL_MAG)

    => si on connaît la clé primaire d'un produit, on dispose des informations concernant ce produit ainsi que celles du magasin où il est stocké.

  • Contraintes d'intégrité

    Une Contrainte d'Intégrité (CI) est une règle qui doit être vérifiée au moment de la création et de la manipulation de données afin que le résultat soit considéré correct et cohérent. A tout instant de l'existence d'une BD, on doit pouvoir ajouter, modifier ou supprimer une contrainte d'intégrité et le SGBD doit être capable de vérifier que la base est toujours cohérente vis à vis du changement apporté à son environnement; dans le cas contraire, il doit rejeter notre intervention.


Le mod le relationnel4

Le modèle relationnel

  • Il existe plusieurs types de contraintes d'intégrité :

    • Unicité de la clé d'une relation

    • CI individuelles :

      Ex. : 200  SALAIRE  10000

      QTE_STK  QTE_SEUIL

    • CI intra-relation (dans la relation) : il s'agit des contraintes entre les champs d'une même relation.

      Ex. : SALAIRE  2 * Moyenne (SALAIRE).

    • CI inter-relations (entre les relations) : on les trouve généralement dans les clés étrangères.

      Ex. : QTE_STK  QTE_CDE

    • Les contraintes dynamiques : elles concernent le passage de la base de données d'un état à un autre.

      Ex. : si on met à jour la table EMPLOYE (SALAIRE),

  • Il faut que Nouveau_SALAIRE  Ancien_SALAIRE.


Chapitre ii langage de base d oracle

Chapitre II : Langage de base d’Oracle

Langage de définition de données : LDD


Langage de d finition de donn es ldd

Langage de définition de données : LDD

  • La définition de données dans SQL permet la définition des objets manipulés par le SGBD.

  • Les objets : table, vue, index

  • Les commandes du LDD sont :

    • CREATE : création des objets.

    • ALTER : modification de la structure des objets.

    • DROP : suppression des objets.


Langage de d finition de donn es ldd1

Langage de définition de données : LDD

  • Syntaxe de Création des tables

    Celle-ci consiste à définir son nom, les colonnes qui la composent et leurs types. Elle se fait avec la commande : CREATE TABLE

    Syntaxe :

    CREATE TABLE nom_table

    (col1 type [(taille)] [default ValeurParDefaut] [null / not null] [contrainte de colonne] ,

    col2 type [(taille)] [default ValeurParDefaut] [null / not null] [contrainte de colonne],

    coln type [(taille)] [default ValeurParDefaut] [null / not null] [contrainte de colonne]

    [contrainte de tables]);


Sgbd oracle cours bd lf2 info

  • Définition des colonnes :

  • La taille indique la valeur maximale de la longueur du champ.

  • Les types de données possibles sont :

    • NUMBER : stocke les nombres en général entiers positifs et négatifs.

    • NUMBER(n) ou NUMBER(n,m)

      • n : varie de 1 à 38 et indique le nombre maximum des chiffres à stocker. C'est la précision.

      • m : indique le nombre de chiffres situés à droite de la virgule si m est positive et à gauche si m est négative. Ex. 3,345 ou -123,456

    • DECIMAL : stocke des nombres à fraction décimale fixe et permet au système d'être compatible avec d'autres BD relationnelles (surtout SQL/DS et DB2).

    • FLOAT : stocke des nombres en virgule flottante.


Sgbd oracle cours bd lf2 info

  • CHAR : stocke des chaînes comportant au maximum 255 caractères dans une colonne de longueur fixe : CHAR(n). Si on ne spécifie pas la longueur : CHAR, une colonne de ce type ne stocke qu'un seul caractère.

  • VARCHAR / VARCHAR2 : le deuxième type remplace le premier. Il stocke jusqu'à 4000 caractères dans une seule colonne pour des chaînes de longueur variable.

  • LONG : donnée de type caractère variable allant jusqu'à 2 G. Mais on ne peut pas employer de fonctions intégrées ni d'opérateurs avec ce type (pour chercher ou modifier le contenu d'une colonne de ce type). On peut stocker et récupérer ces données mais pas les manipuler. En plus ce type de données ne peut être utilisé qu'une seule fois dans une table avec la version 7 d'Oracle.

  • DATE : permet de stocker des informations concernant les dates et les heures.


Exemple cr er la table produit ayant comme sch ma

Exemple : Créer la table Produit ayant comme schéma :

Produit (Numprod, Desprod, Couleur, Poids, Qte_stk, Qte_seuil, Prix)

Avec

Numprod : de type numérique de taille 6,

Desprod : de type caractère variable de taille 15,

Couleur : de type caractère sur une position,

Poids : de type numérique sur huit positions dont trois chiffre après la virgule,

Qte_stk : de type numérique sur sept positions dont trois chiffres après la virgule,

Qte_seuil : de type numérique sur sept positions dont trois chiffres après la virgule,

Prix : de type numérique sur dix positions dont sept chiffres avant la virgule.


Solution

Solution

CREATE TABLE Produit

(Numprod number(6) not null,

Desprod varchar(15),

Couleur char,

Poids number(8,3),

Qte_stk number(7,3),

Qte_seuil number(7,3),

Prix number(10,3));


D finition des contraintes

Définition des contraintes

  • Une contrainte d'intégrité est une règle qui définit la cohérence d'une donnée ou d'un ensemble de données de la base de données.

  • Les contraintes définies par SQL sont :

  • Non nullité des valeurs d'un attribut :L'utilisateur est obligé de saisir la valeur de l'attribut. La commande est : NOT NULL

  • Unicité de la valeur d'un attribut ou d'un groupe d'attributs : la valeur doit être unique. La commande est : UNIQUE

  • Exemple

  • On suppose que deux produits différents ne peuvent pas avoir la même désignation. La commande de création da la table produit devient :


Exemple

Exemple

CREATE TABLE Produit

(Numprod number(6) not null,

Desprod varchar(15) unique,

Couleur char,

Poids number(8,3),

Qte_stk number(7,3),

Qte_seuil number(7,3),

Prix number(10,3));


D finition des contraintes1

Définition des contraintes

  • Clé primaire (un attribut ou un groupe) : indique que l'attribut est une clé primaire. Elle peut être définie comme contrainte de table ou comme contrainte de colonne.

  • Clé primaire comme contrainte de table selon la syntaxe :

  • CONSTRAINT nom_contrainte PRIMARY KEY(att1, att2,…, attn) ;

  • Clé primaire comme contrainte de colonne : en ajoutant devant la colonne clé primaire Primary Key.

  • Remarque

  • Dans le cas de clé primaire multiple, la clé primaire doit être créée comme contrainte de table (Syntaxe 1).


Exemple 1 cl primaire comme contrainte de table

Exemple 1 : Clé primaire comme contrainte de table

Produit (Numprod, Desprod, Couleur, Poids, Qte_stk, Qte_seuil, Prix)

CREATE TABLE Produit

(Numprod number(6),

Desprod varchar(15),

Couleur char,

Poids number(8,3),

Qte_stk number(7,3),

Qte_seuil number(7,3),

Prix number(10,3),

constraint PK_Produit primary key (NumProd)) ;


Exemple 2 cl primaire comme contrainte de colonne

Exemple 2 :Clé primaire comme contrainte de colonne

Produit (Numprod, Desprod, Couleur, Poids, Qte_stk, Qte_seuil, Prix)

CREATE TABLE Produit

(Numprod number(6) primary key,

Desprod varchar(15),

Couleur char,

Poids number(8,3),

Qte_stk number(7,3),

Qte_seuil number(7,3),

Prix number(10,3));


Exemple 3 cl primaire multiple

Exemple 3 :Clé primaire multiple

LigneCommande (NumCde, NumProd, QteCde)

CREATE TABLE LigneCommande

(Num_cde number(8),

NumProd number(6),

QteCde number(7,3),

constraint pk_LigneCde primary key (NumCde, NumProd)) ;

Remarque

Dans le cas de clé primaire multiple, la clé primaire doit être créée comme contrainte de table.


D finition des contraintes2

Définition des contraintes

  • Clé étrangère (intégrité référentielle) :lorsque la clé primaire figure dans une autre table en tant qu'un attribut non clé. La clé étrangère peut être définie comme contrainte de table ou comme contrainte de colonne.

  • Clé étrangère comme contrainte de table selon la syntaxe :

    CONSTRAINT nom_contrainte FOREIGN KEY(nom_att) references nom_table(nom_att);

  • Clé étrangère comme contrainte de colonne : en ajoutant devant la colonne clé étrangère references nom_table(nom_att),

  • Remarque:

    Il est impossible de créer une clé étrangère si la clé primaire associée n'existe pas.


D finition des contraintes3

Définition des contraintes

  • Types de CI Oracle :

    • NULL / NOT NULL : niveau colonne

    • 1. UNIQUE (colonne1 [, colonne2] …)

    • 2. PRIMARYKEY (colonne1 [, colonne2] …)

    • 3. FOREIGNKEY(colonne1 [, colonne2] …)

      REFERENCES nomTablePere (colonne1 [, colonne2] …) [ON DELETE {CASCADE | SET NULL }]

    • 4. CHECK {condition}

  • Les 4 dernières CI sont définissables au niveau colonne ou au niveau table.


Exemple1

Exemple

  • Si on considère le schéma suivant :

    MAGASIN(NumMag, Adresse, Surface)

    PRODUIT(NumProd, DesProd, Couleur, Poids, Qte_Stk, #CodMag)

  • La commande pour la création de la table Magasin étant :

    Create Table Magasin

    (NumMag number(6) primary Key,

    Adresse varchar(30),

    Surface number(7,3));

  • La commande pour la création de la table Produit peut être écrite de deux façons:


Solution 1 cl trang re comme contrainte de table

Solution 1: clé étrangère comme contrainte de table

CREATE TABLE Produit

(Numprod number(6) primary key,

Desprod varchar(15),

Couleur char,

Poids number(8,3),

Qte_stk number(7,3),

Qte_seuil number(7,3),

Prix number(10,3),

CodMag number(6),

Constraint FK_Produit Foreing Key (CodMag) references

Magasin(NumMag));


Solution 2 cl trang re comme contrainte de colonne

Solution 2: clé étrangère comme contrainte de colonne

CREATE TABLE Produit

(Numprod number(6) primary key,

Desprod varchar(15),

Couleur char,

Poids number(8,3),

Qte_stk number(7,3),

Qte_seuil number(7,3),

Prix number(10,3),

CodMag number(6) references Magasin(NumMag));


Contrainte de valeur avec la clause check

Contrainte de valeur avec la clause check

  • Permet de limiter les valeurs possibles pour une colonne en vérifiant une certaine condition. Le contrôle se fera lors des insertions des données.

    Constraint nom_contrainte CHECK (colonne condition)

  • La condition sur la colonne peut utiliser :

    • un opérateur de comparaison

    • la clause between val1 and val2

    • la clause in (liste de valeurs)


Exemple2

Exemple

  • On suppose que le poids d’un produit doit être positif. La commande de création de la table Produit devient :

    CREATE TABLE Produit

    (Numprod number(6) primary key,

    Desprod varchar(15),

    Couleur char,

    Poids number(8,3),

    Qte_stk number(7,3),

    Qte_seuil number(7,3),

    Prix number(10,3),

    CodMag number(6) references Magasin(NumMag),

    Constraint Ck1_Produit CHECK (Poids >=0));


Exemple3

Exemple

  • On suppose que pour un produit, la quantité en stock doit être supérieure ou égale à la quantité seuil. La commande de création de la table Produit devient :

    CREATE TABLE Produit

    (Numprod number(6) primary key,

    Desprod varchar(15),

    Couleur char,

    Poids number(8,3),

    Qte_stk number(7,3),

    Qte_seuil number(7,3),

    Prix number(10,3),

    CodMag number(6) references Magasin(NumMag),

    Constraint Ck1_Produit CHECK (Poids >=0),

    Constraint Ck2_Produit CHECK (Qte_stk >= Qte_seuil));


Exemple4

Exemple

  • On suppose que la quantité d’un produit doit être comprise entre 0 et 1000. La commande de création de la table Produit devient :

    CREATE TABLE Produit

    (Numprod number(6) primary key,

    Desprod varchar(15),

    Couleur char,

    Poids number(8,3),

    Qte_stk number(7,3),

    Qte_seuil number(7,3),

    Prix number(10,3),

    CodMag number(6) references Magasin(NumMag),

    Constraint Ck1_Produit CHECK (Poids >=0),

    Constraint Ck2_Produit CHECK (Qte_stk >= Qte_seuil),

    Constraint Ck3_Produit CHECK(Qte_stk between 0 and 1000));


Exemple5

Exemple

  • On suppose que la couleur d’un produit ne peut être que ‘N’, ‘G’, ou ‘B’. La commande de création de la table Produit devient :

    CREATE TABLE Produit

    (Numprod number(6) primary key,

    Desprod varchar(15),

    Couleur char,

    Poids number(8,3),

    Qte_stk number(7,3),

    Qte_seuil number(7,3),

    Prix number(10,3),

    CodMag number(6) references Magasin(NumMag),

    Constraint Ck1_Produit CHECK (Poids >=0),

    Constraint Ck2_Produit CHECK (Qte_stk >= Qte_seuil),

    Constraint Ck3_Produit CHECK (Qte_stk between 0 and 1000),

    Constraint Ck4_Produit CHECK(Couleur IN (‘N’, ‘G’, ‘B’)));


Exercice

Exercice

  • Pilote (NPil, Nom, NbHvol, #Compa)

  • Compagnie(NComp, NomComp, AdrComp, Ville )

  • Créer les deux tables avec les contraintes nécessaires.

  • Rq : Les contraintes doivent être crééeau niveau table.


Correction

Correction

CREATE Table Compagnie

(NComp char(4),

NomComp varchar2(15),

AdrComp varchar2(20),

Ville varchar2(15),

Constraint pk_Compagnie PRIMARY KEY (NComp));


Correction1

Correction

CREATE Table Pilote

(NPil CHAR(6),

Nom CHAR(15) NOT NULL,

NbHvol NUMBER(7,2),

Compa CHAR (4),

Constraint pk_Pilote PRIMARYKEY (NPil),

Constraint ck_NbHvol CHECK (NbHvol BETWEEN 0 And 2000),

Constraint un_nom UNIQUE (nom),

Constraint FK_Pil_Compa FOREIGNKEY (Compa) REFERENCES Compagnie (NComp));


3 modification de la structure d une table

3- Modification de la structure d’une table

  • Les trois possibilités de modification de la structure de table sous ORACLE permettent soit d'ajouter des colonnes, soit de modifier la structure d'une colonne, soit de supprimer des colonnes existantes.

    1ère forme : Ajout de nouvelles colonnes à une table

  • Syntaxe:

    ALTER TABLE nom_table

    ADD (col1 type [(taille)] [null / not null] ,

    col2 type [(taille)] [null / not null] ,

    . . .

    coln type [(taille)] [null / not null] ) ;

  • Exemple:

    Supposons qu'on veut ajouter une colonne type_clt à la table client :

    ALTER TABLE CLIENT

    ADD type_clt char(3) ;


2 me forme modification de la structure d une colonne existante

2ème forme : Modification de la structure d'une colonne existante

  • Syntaxe:

    ALTER TABLE nom_table

    MODIFY (col1 type [(taille)] [null / not null] ,

    col2 type [(taille)] [null / not null] ,

    . . .

    coln type [(taille)] [null / not null] ) ;

  • Remarque:

    Pour modifier le nom d'une colonne :

    RENAME COLUMN nom_table.ancien_nom TO nom_table.nouveau_nom ;

  • Exemple:

    Supposons qu'on veut changer le type_clt de char(3) en char(5) :

    ALTER TABLE CLIENT

    MODIFYtype_clt char(5) default ‘Monas’;


3 me forme suppression de colonnes existantes

3ème forme : Suppression de colonnes existantes

  • Syntaxe:

    ALTER TABLE nom_table

    DROP ( col1 , col2 ,…, coln ) ;

  • Exemple :

    Supposons qu'on veut supprimer le champ ville de la table Magasin :

    ALTER TABLE Magasin

    DROP ville ;


4 me forme ajout d une contrainte

4ème forme : Ajout d'une contrainte

  • Syntaxe:

    ALTER TABLE nom_table

    ADD Constraint Def_de_contrainte ;

  • Exemple :

    Ajouter à la relation Magasin la contrainte suivante : la surface doit être comprise entre 10 et 100 m2

    ALTER TABLE Magasin

    ADD Constraintck1_magasin check(surface between 10 and 100) ;


5 me forme suppression de contraintes existantes

5ème forme : Suppression de contraintes existantes

5.1 Suppression d'une contrainte clé primaire :

  • On peut effacer une clé primaire. La commande est :

    ALTER TABLE nom_table DROP PRIMARY KEY [CASCADE] ;

  • Remarque :

  • L'option cascade est ajoutée pour pouvoir supprimer une clé primaire référencée.

  • Exemple :

    Supprimer la contrainte clé primaire de la table magasin

    ALTER TABLE magasin DROP PRIMARY KEY CASCADE ;


Sgbd oracle cours bd lf2 info

5.2 Suppression d'une contrainte autre que la clé primaire :

  • On peut effacer une clé étrangère. La commande est :

    ALTER TABLE nom_table DROP CONSTRAINT nom_contrainte ;

  • Où Le nom de la contrainte c'est celui de la contrainte à supprimer .

  • Exemple :

    Supprimer la contrainte spécifiant les couleurs possibles pour les produits

    ALTER TABLE produit DROP CONSTRAINT Ck4_Produit ;

  • Remarque:

  • Pour retrouver les différentes contraintes avec leur propriétés, on peut utiliser la commande suivante :

    Select * from user_constraints

    [where table_name = 'NOMTABLE' ];

    Il est à remarquer que pour cette commande, le nom de la table doit être écrit en majuscule.


Suppression de tables

Suppression de tables

  • Syntaxe :

    DROP TABLE nom_table ;

  • Exemple :

  • Supposons qu'on veut supprimer la table client_tunis :

    DROP TABLE client_tunis ;

  • Remarque :

    Contrainte de suppression de table : permet de supprimer toutes les contraintes d'intégrité référentielles qui se reflètent aux clés uniques ou primaires de la table à supprimer. La commande est :

    DROP TABLE nom_table CASCADE CONSTRAINTS;


Renommage et cr ation de synonymes de tables

Renommage et création de synonymes de tables

  • Pour changer le nom d'une table existante la commande est :

  • Syntaxe :

    RENAME ancien_nom TO nouveau_nom ;

  • Il est également possible de donner à une même table plusieurs noms différents appelés synonymes.

  • Syntaxe :

    CREATE SYNONYM nom_synonyme FOR nom_table ;

  • Pour supprimer un synonyme donné, on utilise la commande :

  • Syntaxe :

    DROP SYNONYM nom_synonym ;

  • Remarque :

    La suppression d'une table implique la suppression des synonymes correspondants.


  • Login