错误代码:1452。无法添加或更新子行

时间:2012-11-20 08:21:52

标签: mysql

我正在尝试将数据加载到以下表格:

-- -----------------------------------------------------
-- Table `mydb`.`Gener`
-- -----------------------------------------------------    
CREATE  TABLE IF NOT EXISTS `mydb`.`Gener` (
  `Movie_Name` VARCHAR(100) NOT NULL ,
  `Genres_Type` VARCHAR(100) NULL ,
  `Movie_Year` VARCHAR(100) NOT NULL ,
  PRIMARY KEY (`Movie_Name`, `Movie_Year`) ,
  CONSTRAINT `fk_Gener_Movie1`
    FOREIGN KEY (`Movie_Name` , `Movie_Year` )
    REFERENCES `mydb`.`Movie` (`Name` , `Year` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)

-- -----------------------------------------------------
-- Table `mydb`.`Movie`
-- -----------------------------------------------------    
CREATE  TABLE IF NOT EXISTS `mydb`.`Movie` (
  `Name` VARCHAR(100) NULL ,
  `Lenght` INT(20) NULL ,
  `Year` VARCHAR(100) NOT NULL ,
  `id` INT(5) NOT NULL AUTO_INCREMENT ,
  PRIMARY KEY (`id`, `Name`, `Year`) )

-- -----------------------------------------------------
-- Table `mydb`.`tempGener`
-- -----------------------------------------------------    
CREATE TABLE `mydb`.`tempGener' (
    `mGName` VARCHAR(100),
    `mGType` VARCHAR(100),
    `mGYear` VARCHAR(100)
)

我成功将数据上传到以下两个表格。

  • tempGener
  • movie

现在我尝试使用以下命令

将数据加载到Gener
INSERT INTO gener (Movie_Name, Genres_Type, Movie_Year)
(SELECT movie.Name, tempgener.mGType , movie.Year
 FROM tempgener, movie)

但我收到以下错误:

  

错误代码:1452。无法添加或更新子行:外键   约束失败(mydb3gener,CONSTRAINT fk_Gener_Movie1   FOREIGN KEY(Movie_NameMovie_Year)参考mydbmovie   (NameYear)在更新时不执行任何操作无操作)

1 个答案:

答案 0 :(得分:0)

我解决了我的问题,问题是,我缺少WHERE语句。 感谢每一个身体给我快速反应。