我正在尝试在我的 MySQL 数据库中创建多对多关系。我有三个表
Films
: Genres
和Films_Genres
。我正在使用以下代码来设置它们:
CREATE TABLE Films
(
id INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
Title VARCHAR(255)
),
CREATE TABLE Genres
(
id INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
Name VARCHAR(255)
),
CREATE TABLE Films_Genres
(
film_id INT NOT NULL,
genre_id INT NOT NULL,
PRIMARY KEY (film_id, genre_id),
FOREIGN KEY (film_id) REFERENCES Films(id) ON UPDATE CASCADE,
FOREIGN KEY (genre_id) REFERENCES Genres(id) ON UPDATE CASCADE
)
但是,当我尝试将一些值插入到表中时:
INSERT INTO Films (Title) VALUES ('$title')
INSERT INTO Genres (Name) VALUES ('$genre')
我可以看到表格中的新电影和Films
表格中的新流派,Genres
但Films_Genres
表格没有更新 - 没有新行(我正在通过 phpMyAdmin 检查)。
我究竟做错了什么?