[RESOLU] #1217 - Cannot delete or update a parent row: a foreign key

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] #1217 - Cannot delete or update a parent row: a foreign key

par mere-teresa » 25 oct. 2006, 17:49

Tu manipules une base de données qui existe déjà ? Ce n'est pas toi qui l'as créée ?

par Ryle » 25 oct. 2006, 16:53

C'est une question d'intégrité.
Si tu as deux tables A et B et que dans B tu dis qu'il y a un champ qui se réfère à A (clé étrangère vers A), tu ne peux pas modifier ou supprimer l'enregistrement dans A puisqu'il existe un enregistrement "fils" dans B qui ne serait plus "intègre" si tu supprimais l'enregistrement auquel il fait référence :)

Bon après tout dépend de la contrainte mise en place entre ces deux tables, certaines permettent de supprimer B en cascade ou de modifier la valeur associée... mais comme ça tu as une idée générale de ce qui doit te bloquer :)

par Clementine » 25 oct. 2006, 15:46

Ok merci. Je ne comprend pas "la cible d'une clé etrangère"

par zeus » 25 oct. 2006, 15:41

Le message d'erreur qui est dans le titre signifie que que tu essayes de modifier ou de supprimer une ligne dans ta base de données qui est la cible d'une clé étrangère, ce qui est impossible.

Le second message d'erreur laisse penser qu'il manque un argument à une fonction mais sans code, je ne pourrais en dire plus :roll:

#1217 - Cannot delete or update a parent row: a foreign key

par Clementine » 25 oct. 2006, 14:49

et tbl_properties_structure.php: Missing parameter: table

Bonjour

Voici le probleme que j'ai lorsque je veux supprimer une table de ma base.
Aucun enregistrement ne sont dans cette table, juste un champ et aucun index.
Auriez vous une idée d'ou cela pourrai venir ?
je précise que je suis sous mysql avec phpmyadmin.
merci d'avance