[SQL] Faire une suppresion en cascade

drizzt40 Messages postés 133 Date d'inscription   Statut Membre Dernière intervention   -  
 simoloy -
Quelqu'un saurait-il comment je peux faire un DELETE en cascade ou avec la contrainte DELETE ON CASCADE.

=}- The_Str@nger -{=
A voir également:

9 réponses

Cyber Liz Messages postés 64 Date d'inscription   Statut Membre Dernière intervention   50
 
Bonjour,

Moi je l'utilise dans la création de mes tables, voici un exemple:

CREATE TABLE piForum (
foID NUMERIC(4) NOT NULL PRIMARY KEY,
foLoID NUMERIC(4) NOT NULL,
foMessage VARCHAR(255),
foEtoiles NUMERIC(1),
INDEX ind_LoID (foLoID),
CONSTRAINT fkForum FOREIGN KEY (foLoID) REFERENCES piLogiciels(loID) ON DELETE CASCADE
) TYPE=INNODB;

Dans cet exemple, lorsqu'on logiciel est supprimé, les messages du forum sur ce logiciel sont suprimés avec on delete cascade.

Il te faut des contraintes de clés étrangères pour que ça fonctionne.

La syntaxe pour ajouter ta contrainte si tu n'en a pas:
ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name] (index_col_name,...) ON DELETE CASCADE

J'espère que ça va t'aider

Vive le Québec libre! Et oui, je suis québécoise...
45