2016-05-29 62 views
0

在我的项目中,我在表中使用3个主键,这将是表单和其他字段中3个下拉条目的条目。其他字段将有所不同,但对于多个记录,3个下拉列表的条目将相同。但我收到异常“重复键值”。有什么办法可以添加重复的条目到主键在SQL Server中。是否有可能在sql server 2014中复制组合主键中的条目

+3

根据定义,您不能有重复的主键值。你为什么要这样设置复合键?您的应用中的业务需求是什么 - 您可以使用代理键(顺序/ UUID)吗? –

+0

RDBMS表可以包含许多可由FOREIGN KEY引用的UNIQUE KEY。其中一个唯一键可以被指定为PRIMARY KEY。隐含的是它是**唯一的**,即不允许重复的值。因此是定义,所以当你尝试插入重复值时,你会得到一个“重复键值”的错误。这就是它应该工作的方式。尝试使用Google搜索[“什么是主键”](https://www.google.com/search?q=what+is+a+primary+key)。所有文章都使用“唯一”一词。 – Andreas

回答

0

您只能使用一个主键,而不是3个状态。主键可以是一个组合并包含3个字段,但它仍然是一个键。请参阅以下链接以进行确认;

Can I have multiple primary keys in a single table?

您可以拥有独立多个唯一键,请参阅下面的详细信息;

http://www.w3schools.com/sql/sql_unique.asp

你不得不脚本表格中看到你有这些。如果它是复合主键,那么答案是否定的,你不能有重复,这是主键的点。