Mysql
 sql >> Base de données >  >> RDS >> Mysql

MySQL - Impossible d'ajouter ou de mettre à jour une ligne enfant :une contrainte de clé étrangère échoue

J'ai résolu mon 'échec de la contrainte de clé étrangère ' problèmes en ajoutant le code suivant au début du code SQL (c'était pour importer des valeurs dans une table)

SET @example@sqldat.com@CHARACTER_SET_CLIENT;
SET @example@sqldat.com@CHARACTER_SET_RESULTS;
SET @example@sqldat.com@COLLATION_CONNECTION;
SET NAMES utf8;
SET @example@sqldat.com@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @example@sqldat.com@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @example@sqldat.com@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO';
SET @example@sqldat.com@SQL_NOTES, SQL_NOTES=0; 

Puis ajouter ce code à la fin du fichier

SET example@sqldat.com_SQL_MODE;
SET example@sqldat.com_FOREIGN_KEY_CHECKS;
SET example@sqldat.com_UNIQUE_CHECKS;
SET example@sqldat.com_CHARACTER_SET_CLIENT;
SET example@sqldat.com_CHARACTER_SET_RESULTS;
SET example@sqldat.com_COLLATION_CONNECTION;
SET example@sqldat.com_SQL_NOTES;