Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Débuter
Débuter Forum d'entraide pour débuter avec MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/02/2008, 22h53   #1
Candidat au titre de Membre du Club
 
Inscription : décembre 2002
Messages : 39
Détails du profil
Informations forums :
Inscription : décembre 2002
Messages : 39
Points : 12
Points : 12
Envoyer un message via Yahoo à ghassenus
Par défaut Suppression imbriquée

Bonsoir
Alors etant debutant dans la sql
je me suis contenté de faire des requêtes simples mais pour une fois que je me trouve devant une requete complexe que j'arrives pas à resoudre

Alors voici le probléme
J'ai plusieurs tables comportants chacune un id automatiques
je vouderaisque si je suprime un elements d'une table tous les elements des autres tablesqui contienent cet id seront suprimés
je m'explique
J'ai 3 table:
Table Domaine_F
Table Type_F
Table Famille_F
Table Fournitures

Structuré comme suit:
Domaine_F| Type_F | Famille_F | Fournitures|
-Id:Autoincr | -Id:Autoincr | -Id:Autoincr | Id:Autoincr|
-Desi:Text | -Id_DOM:integer | -Id_Type:integer | Id_Fam:integer|
| -Desi:Text | -Desi:Text | -Desi:Text|
alors si je suprime un Domaine_F tous les Types_F dont Type_F.Id_Dom=Domaine_F.Id (suprimé) et tous les famille_F dont le Famille_F.Id_Fam=Type_F.Id(suprimé) et toutes les fournitures dont le Fournitures.Id_Fam=Famille_F.Id(suprimé) seront suprimés

vraiment j'arrive pas à resoudre ce probléme merci de vos suggestions.
ghassenus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2008, 14h46   #2
Rédacteur/Modérateur

 
Avatar de Antoun
 
Homme Antoine Dinimant
Consultant en Business Intelligence
Inscription : octobre 2006
Messages : 5 854
Détails du profil
Informations personnelles :
Nom : Homme Antoine Dinimant
Âge : 42
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Conseil

Informations forums :
Inscription : octobre 2006
Messages : 5 854
Points : 9 540
Points : 9 540
ça s'appelle une suppression en cascade. Cf http://dev.mysql.com/doc/refman/5.0/...nstraints.html, l'exemple avec ON DELETE CASCADE.
__________________
Antoun
Expert SQL, BO, Essbase

La bible d'Essbase est parue !
Antoun est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/02/2008, 12h26   #3
Candidat au titre de Membre du Club
 
Inscription : décembre 2002
Messages : 39
Détails du profil
Informations forums :
Inscription : décembre 2002
Messages : 39
Points : 12
Points : 12
Envoyer un message via Yahoo à ghassenus
Merci c'est ce que je cherché exactement
mais en essayant de faire cela ça plante avec 3 tables et j'arrive pas à comprendre la raison pourtant la methode marche avec les autres tables( 17)
voici le message d'erreur que j'ai eu ainsi que le script sql de la creation de la
base ça plante sur les tables 'Pr_Compo', 'gite' et 'Anc_MDO' merci de votre
Images attachées
Type de fichier : jpg erreur.jpg (134,2 Ko, 4 affichages)
Fichiers attachés
Type de fichier : sql DEVISBAT_OPTIMISE.sql (13,9 Ko, 1 affichages)
ghassenus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2008, 09h10   #4
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
Citation:
Envoyé par ghassenus Voir le message
Merci c'est ce que je cherché exactement
mais en essayant de faire cela ça plante avec 3 tables et j'arrive pas à comprendre la raison pourtant la methode marche avec les autres tables( 17)
voici le message d'erreur que j'ai eu ainsi que le script sql de la creation de la
base ça plante sur les tables 'Pr_Compo', 'gite' et 'Anc_MDO' merci de votre
Souvent cette erreur est lié au faite que la table à quelques erreur assez courante à laquelle je me suis confronté avec l'expérience. En voici la liste :
- La table à laquelle vous faire le lien possède déjà des enregistrements et ce sont des valeurs non null.
- Le type, la longueur ou tout autre élément spécifique au champs n'est pas identique. Les deux champs liés doivent avoir la même configuration.
- Type de champs
- null ou not null ?
- zerofile ?
- signé ou non signé, c'est à dire s'il peut y avoir des valeurs négative ou non. Par défaut il peut y avoir des valeurs négative.
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/02/2008, 13h10   #5
Candidat au titre de Membre du Club
 
Inscription : décembre 2002
Messages : 39
Détails du profil
Informations forums :
Inscription : décembre 2002
Messages : 39
Points : 12
Points : 12
Envoyer un message via Yahoo à ghassenus
Merci de votre réponse je vérifie ça et je vous rappel
encore merci à tous!
ghassenus est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h32.


 
 
 
 
Partenaires

Hébergement Web