我正在 mysql 服务器上工作。我在其中创建了一个名为 Question 的表。该表的列/属性是(课程、主题、年份、问题)
我想创建一个由(课程+主题+年份)组成的主键(或复合键)。即,对于特定的课程+科目+年份组合,只能有一个问题。只有一行包含(课程+科目+年份)的组合,不可能创建另一行。
我已经做到了:
primary key(course,subject,year);
但它不起作用。我仍然可以使用相同的课程、主题、年份组合创建两行。
谁能告诉我如何创建复合键属性???
语法是CONSTRAINT constraint_name PRIMARY KEY(col1,col2,col3)
例如 ::
CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)
如果您在创建表时编写上面的示例,则上面的示例将起作用,例如 ::
CREATE TABLE person (
P_Id int ,
............,
............,
CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)
);
要将此约束添加到现有表中,您需要遵循以下语法
ALTER TABLE table_name ADD CONSTRAINT constraint_name PRIMARY KEY (P_Id,LastName)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)