[SQL] Faire une suppresion en cascade

Fermé
drizzt40
Messages postés
132
Date d'inscription
mercredi 14 mai 2003
Statut
Membre
Dernière intervention
16 mai 2005
- 29 juin 2004 à 13:57
 simoloy - 30 juin 2012 à 16:31
Quelqu'un saurait-il comment je peux faire un DELETE en cascade ou avec la contrainte DELETE ON CASCADE.

=}- The_Str@nger -{=

9 réponses

Cyber Liz
Messages postés
64
Date d'inscription
lundi 23 juin 2003
Statut
Membre
Dernière intervention
18 août 2004
50
29 juin 2004 à 17:16
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