我无法添加新行,Mysql 中的外键约束失败



我已经创建了两个表格UserCaisse的表:

CREATE TABLE IF NOT EXISTS `GGC`.`User` (
  `IdUser` INT NOT NULL,
  `LibUser` VARCHAR(50) NULL,
  PRIMARY KEY (`IdUser`))
ENGINE = InnoDB;
CREATE TABLE IF NOT EXISTS `GGC`.`Caisse` (
  `IdCais` INT NOT NULL AUTO_INCREMENT,
  `LibCais` VARCHAR(50) NULL,
  `RefCais` VARCHAR(50) NULL,
  `MontantCais` FLOAT NULL,
  `IdUser` INT NOT NULL,
  PRIMARY KEY (`IdCais`),
  INDEX `fk_Caisse_User1_idx` (`IdUser` ASC),
  CONSTRAINT `fk_Caisse_User1`
    FOREIGN KEY (`IdUser`)
    REFERENCES `GGC`.`User` (`IdUser`))
ENGINE = InnoDB;

但是,当我尝试添加现在行时,问题是我不断收到此错误消息:

错误:#1452-无法添加或更新子行:外键约束失败(GGCcaisse,约束fk_Caisse_User1外键(IdUser(参考User(IdUser((

注意:尽管我在表用户中有一些数据

在表Caisse

中添加新行

解决了问题,我将表格类型更改为Innodb,并且它起作用。