IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PL/SQL Oracle Discussion :

Supprimer une ligne + ses dépendances


Sujet :

PL/SQL Oracle

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 80
    Points : 40
    Points
    40
    Par défaut Supprimer une ligne + ses dépendances
    Bonjour à tous,

    Est-il possible de supprimer une ligne d'un table et du même coup toutes les lignes associés à cette ligne supprimée des autres tables liées par des contraintes?

    SGBD Oracle 10

    Merci

  2. #2
    Membre averti Avatar de dariyoosh
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 236
    Points : 334
    Points
    334
    Par défaut
    Bonjour,

    Oui c'est possible si la clé étrangère a été définie definie de cette façon:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ALTER TABLE tableEnfant ADD CONTRAINT FK_TABLEENFANT FOREIGN KEY(<liste des colonnes>) REFERENCES tableParent(<list des colonnes>) ON DELETE CASCADE
    Grâce à ON DELETE CASCADE, la suppression des lignes dans la table principale nécessitent également la suppression des lignes dans les tables liées aux lignes qui viennent d'être supprimées.

    Ici vous avez le lien vers la documentation oracle indiquant le syntax

    http://docs.oracle.com/cd/E11882_01/...2.htm#CJAIHHGC

    ON DELETE Clause :
    The ON DELETE clause lets you determine how Oracle Database automatically maintains referential integrity if you remove a referenced primary or unique key value. If you omit this clause, then Oracle does not allow you to delete referenced key values in the parent table that have dependent rows in the child table.

    Specify CASCADE if you want Oracle to remove dependent foreign key values.

    Specify SET NULL if you want Oracle to convert dependent foreign key values to NULL. You cannot specify this clause for a virtual column, because the values in a virtual column cannot be updated directly. Rather, the values from which the virtual column are derived must be updated.
    Cordialement,
    Dariyoosh

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 80
    Points : 40
    Points
    40
    Par défaut suppresion de lignes multiples.
    Merci!

    C'est tout nickel ce qu'il me fallait.
    Et merci pour le lien.

    A bientôt et bonne continuation a tous.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [langage] supprimer une ligne
    Par helene22500 dans le forum Langage
    Réponses: 2
    Dernier message: 25/05/2005, 10h27
  2. [JTable] Supprimer une ligne d'un jtable
    Par Orionmel dans le forum Composants
    Réponses: 5
    Dernier message: 05/11/2004, 22h29
  3. [C#] Comment supprimer une ligne dans DataGrid ?
    Par BAUDIER dans le forum ASP.NET
    Réponses: 2
    Dernier message: 20/07/2004, 16h03
  4. supprimer une ligne avec cle etrangere
    Par BaBas dans le forum Langage SQL
    Réponses: 4
    Dernier message: 15/07/2003, 11h24
  5. Supprimer une ligne dans un fichier
    Par sbeu dans le forum Langage
    Réponses: 3
    Dernier message: 13/05/2003, 10h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo