Bonjour à tous
Je suis bloqué depuis un moment sur un problème, voici la situation.
J'ai une base de données MySQL contenant 9 tables, j'ai besoin de remplacer l'intégralité du contenu de l'une de ses 9 tables avec le contenu d'un fichier csv.
Cela fonctionne parfaitement lorsque la base de données est vide, mais lorsque des enregistrements sont effectués, l'importation ne fonctionne plus :
Cela, je le comprend, c'est logique. En cherchant, l'astuce consisterai à utiliser
Code : Sélectionner tout - Visualiser dans une fenêtre à part #1451 - Cannot delete or update a parent row: a foreign key constraint fails
En début de script sql, puis
Code : Sélectionner tout - Visualiser dans une fenêtre à part SET foreign_key_checks = 0;
en fin de script sql afin de désactiver le contrôle des clés étrangères. J'ai réussi avec un script sql généré depuis phpmyadmin mais pas avec un csv, et je suis obligé de passer par un csv, car c'est le seul moyen d'exporter les données depuis le programme qui les contient.
Code : Sélectionner tout - Visualiser dans une fenêtre à part SET foreign_key_checks = 1;
Question : comment faire, dans phpmyadmin, pour désactiver le contrôle des clés étrangères avant importation via un csv ?
J'ai cherché et trouvé qu'il était possible de passer par "CSV using LOAD DATA" dans phpmyadmin, ce qui reviendrait à utiliser du SQL et donc à pouvoir désactiver la vérification des clés étrangères. Je n'obtient pas d'erreur mais il ne se passe rien après un court instant de chargement.
Merci pour votre aide !![]()
Partager