如何 link mySQL 中的两个关系表

How to link two relational tables in mySQL

我有两个table

  1. Video(v_id,v_duration,v_status,upload_date)视频table中的主键是v_id。
  2. video_tags(tag_name, video_id)

视频可以有很多标签,这就是为什么我将它们分成两个 table 的原因。问题是当我使用 mySQL 数据库创建这两个 table 时,我设法使用下面的 sql 语句创建了第一个 table, 创建 table video (v_id int, v_duration double, v_status varchar(50) default 'needs approval', upload_date DATE, primary key(v_id))

但是第二个我不能,因为对参考键的误解。

这个mySQL说法是真的吗?

创建 table video_tags(tag_name varchar(50), video_id int, 主键(vidoe_id, tag_name))

这应该有效:

CREATE TABLE `video_tags` (
`tag_id` INT NOT NULL,
`tag_name` VARCHAR(50) NOT NULL,
`video_id` INT NOT NULL,
 PRIMARY KEY (`tag_id`),
 INDEX `video_id` (`video_id` ASC),
 INDEX `tag_name` (`tag_name` ASC),
 CONSTRAINT `video_id_fk`
 FOREIGN KEY (`video_id`)
 REFERENCES  `video` (`v_id`))

使用另一列作为主键