“无法添加或更新子行” mysql

时间:2018-11-22 13:07:00

标签: mysql reference foreign-keys

我不断得到这个标志:

  

1452-无法添加或更新子行:外键约束失败(mydb4653stars,CONSTRAINT fk_stars_movie外键   ({movieID)参考文献movieid))

当我尝试将数据插入表中

这些是表格

movie(id, title, relYear, category, runTime, director,
studioName, description, rating)
actor(aID, fName, surname, gender)
stars(movieID, actorID)
movGenre(movieID, genre)

我认为这可能与它不是唯一的 movieID 有关,因为它是我遇到的唯一问题。绝对是索引

我尝试过:

CREATE TABLE stars
(movieID INTEGER,
actorID INTEGER NOT NULL PRIMARY KEY,
CONSTRAINT fk_stars_movie FOREIGN KEY (movieID) REFERENCES movie(ID)
);

,以及在关系视图中手动使其成为外键。它的主键也具有相同的数据类型,因此也不是问题。

CREATE TABLE movie
(id INTEGER NOT NULL PRIMARY KEY,
 title VARCHAR(100), 
 relYear INTEGER, 
 category VARCHAR(5), 
 runTime INTEGER, 
 director VARCHAR(50), 
 studioName VARCHAR(100), 
 description VARCHAR(500), 
 rating DECIMAL(10,2)
);

1 个答案:

答案 0 :(得分:0)

set foreign_key_checks = 0;

您的插入查询在这里...

设置foreign_key_checks = 1;