【问题标题】:SQL Force one column to be unique for every row that shares the same foreign keySQL 强制一列对于共享相同外键的每一行都是唯一的
【发布时间】:2023-03-09 04:15:01
【问题描述】:

只是想知道这是否可以由数据库强制执行......

我有一个表,它有一个外键,而另一列在外键相同的行中需要是唯一的。只要外键不同,就允许重复条目。

有没有办法做到这一点?我似乎无法找到一种方法来设置基于某些条件而不是应用于整个表的唯一约束。

【问题讨论】:

    标签: mysql sql foreign-keys unique-constraint


    【解决方案1】:

    您也可以在两列上创建UNIQUE 约束。

    ALTER TABLE myTableName 
          ADD CONSTRAINT tb_UQ UNIQUE (FKColumn, OtherColumn)
    

    更新 1

    【讨论】:

      【解决方案2】:

      您可以在 MySQL 中的两列上添加唯一约束:

      alter table add unique index table(fk, othercolumn)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-03-27
        • 2023-02-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多