代码之家  ›  专栏  ›  技术社区  ›  Michael Haddad

是否有方法创建具有唯一行的SQLSERVER表?

  •  1
  • Michael Haddad  · 技术社区  · 9 年前

    我希望我的表具有唯一的行,但不具有唯一的列。这是一种选择吗?我希望能够在同一列的多行上具有相同的值,但不能100%复制另一行。。。

    我看到了 this 问题,但它是关于MySQL的,我需要它用于SQL SERVER。

    我的具体表格(谈话人员)是:

    conversation_id | staffer_id | handled
    

    谢谢

    1 回复  |  直到 8 年前
        1
  •  4
  •   Felix Pamittan    9 年前

    您可以添加包含表中所有列的唯一索引:

    CREATE UNIQUE INDEX <index name> ON <tablename>(<columns>); 
    

    或者,可以将所有列设置为主键。但你必须放弃 PK 首先,如果表已经有了。

    ALTER TABLE <tablename> DROP CONSTRAINT <constraint_name>;    
    ALTER TABLE <tablename> ADD PRIMARY KEY (<columns>);