MySQL 5中的多列主键

我正在尝试学习如何使用键并打破习惯,即SERIAL我所有表中的所有行都必须具有类型ID。同时,我也在进行多对多关系,因此在需要协调关系的表的任一列上要求唯一值会妨碍这一点。

我如何在表上定义主键,以便任何给定的值都可以在任何列中重复,只要永不完全重复所有列中的值组合即可?

回答:

从CREATE TABLE语法页面引用:

主键可以是多列索引。但是,您不能使用列规范中的PRIMARY KEY键属性创建多列索引。这样做仅将单列标记为主要。您必须使用单独的PRIMARY

KEY(index_col_name,…)子句。

这样的事情可以用于多列主键:

CREATE TABLE

product (

category INT NOT NULL,

id INT NOT NULL,

price DECIMAL,

PRIMARY KEY(category, id)

);

从 13.1.20.6外国关键约束

以上是 MySQL 5中的多列主键 的全部内容, 来源链接: utcz.com/qa/414399.html

回到顶部