Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Administration
Administration Forum d'entraide sur l'administration de 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 14/12/2011, 20h45   #1
Membre habitué
 
Inscription : mai 2004
Messages : 499
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 499
Points : 149
Points : 149
Par défaut Cannot add or update a child row: a foreign key constraint fails

Bonsoir,

Lors de l'import dans ma table 'commune' (vide) de données à partir d'un fichier .csv, j'obtiens l'erreur suivante :

Citation:
#1452 - Cannot add or update a child row: a foreign key constraint fails (`hotels`.`commune`, CONSTRAINT `FK_2D5FE872E946114A` FOREIGN KEY (`province_id`) REFERENCES `province` (`id`))
D'après ce que j'en comprends, c'est qu'il y a un souci avec la clé étrangère 'province_id' de ma table 'commune'. Or, toutes les clés que je tente d'introduire existent bien dans ma table 'province'. Pour certains enregistrements, il n'y a pas de valeur, de manière logique car mon champ 'province_id' peut être null.

Quelqu'un aurait une idée?

Merci d'avance pour votre aide
dubitoph est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2011, 08h43   #2
Membre habitué
 
Inscription : mai 2004
Messages : 499
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 499
Points : 149
Points : 149
J'ai résolu mon problème en désactivant les frorein keys lors de l'import
Code :
SET FOREIGN_KEY_CHECKS = 0;
dubitoph est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 16h12   #3
Invité régulier
 
Inscription : février 2007
Messages : 17
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 17
Points : 5
Points : 5
Je trouve que ce n'est pas une solution très propre, les clés étrangères ne servant plus à rien dès lors...

J'ai le même problème, avec un fichier de plus de 500000 lignes et je voudrais chercher la ligne exacte d'où vient l'erreur pour tenter de la corriger.

Est-ce que quelqu'un sait comment trouver la ligne exacte du fichier csv lorsque cette erreur survient ?

Merci d'avance
johnalias110 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 17h17   #4
Expert Confirmé
 
Homme
Inscription : mai 2002
Messages : 1 655
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : mai 2002
Messages : 1 655
Points : 2 657
Points : 2 657
Bonjour,

loadez votre fichier csv dans une table temporaire et faites des requêtes dessus pour extraire les lignes fautivent
punkoff est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/01/2012, 08h29   #5
Invité régulier
 
Inscription : février 2007
Messages : 17
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 17
Points : 5
Points : 5
Bonjour et merci, c'est bien la solution à laquelle je suis arrivé faute de possibilité directe.
johnalias110 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 05h01.


 
 
 
 
Partenaires

Hébergement Web