[SQL] Faire une suppresion en cascade [Fermé]

Signaler
Messages postés
132
Date d'inscription
mercredi 14 mai 2003
Statut
Membre
Dernière intervention
16 mai 2005
-
 simoloy -
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

Messages postés
64
Date d'inscription
lundi 23 juin 2003
Statut
Membre
Dernière intervention
18 août 2004
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
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 76687 internautes nous ont dit merci ce mois-ci

Si tu ne peux ou ne veux pas modifier la structure des tables pour gérer des contraintes réfentielles tu ne peux pas faire de delete cascade.
Donc sera à la main. Le plus propre serais d'ajouter un trigger on delete sur la table maitre mais c'est déjà modifier la structure des tables.
Messages postés
149
Date d'inscription
vendredi 30 avril 2004
Statut
Membre
Dernière intervention
23 juillet 2010
14
Slt,
qu'appelle tu un delete en cascade ?
Messages postés
132
Date d'inscription
mercredi 14 mai 2003
Statut
Membre
Dernière intervention
16 mai 2005
24
Je sais qu'on pourrait faire un ALTER TABLE pour modifié la contrainte d'intégrité responsable de ca et mettre ON DELETE CASCADE. Mais si on ne veut pas modifié la table....commment faire ?

=}- The_Str@nger -{=
Messages postés
132
Date d'inscription
mercredi 14 mai 2003
Statut
Membre
Dernière intervention
16 mai 2005
24
Une suppression qui force la suppression des enregistrements faisant référence a cette table (Foreign Key)

=}- The_Str@nger -{=
Messages postés
132
Date d'inscription
mercredi 14 mai 2003
Statut
Membre
Dernière intervention
16 mai 2005
24
Malheureusement non, mais merci quand meme. Il faut que je me débrouille sans modifier les tables ni les contraintes

=}- The_Str@nger -{=
Messages postés
149
Date d'inscription
vendredi 30 avril 2004
Statut
Membre
Dernière intervention
23 juillet 2010
14
Je crois que je vois a peu près ce que tu veut dire mais désolé je ne sais pas comment faire
coment on peux suprimer un colonne dans une table exite

Bonjour, s'il vous plaît, merci.

De rien.
bonjour ,
vous pouvez utiliser la requitte suivante :
alter table table1
delete column column1
ou bien :
alter table table1
drop column column1

j'espère que c vas bien ^^
coment on peux suprimer un colonne dans une table exite
Bonjour, s'il vous plaît, merci.

De rien.