具有主键的两列不具有具有一个主键的两列

时间:2012-05-16 09:58:11

标签: sql-server primary-key

在表中我希望有两列主键(如果两列中的每一列都重复,则避免插入值),而不是两列同时包含一个主键(如果两列都重复,则避免插入值)< / p>

例如:

列1:A,B,C

列2:1,2,3

在此表中我不想插入(column1:a和column2:4)或(column1:d和column2:3)

6 个答案:

答案 0 :(得分:7)

你只能拥有一个主键,这就是重点。在另一列上添加唯一约束?

答案 1 :(得分:3)

使用UNIQUE属性设置的第二列索引。

答案 2 :(得分:1)

你不能。一个表只能有一个主键。 考虑使用两个唯一索引。

CREATE UNIQUE INDEX index1 ON Table(column1);
CREATE UNIQUE INDEX index2 ON Table(column2);

答案 3 :(得分:1)

您只能设置一个主键。对于下一个,您可以创建唯一键或组合唯一的组合键(复合键)。

答案 4 :(得分:0)

使用一个主键和一个唯一索引。

答案 5 :(得分:0)

例如,在column1中创建主键,在columnb上创建唯一索引。