检查约束使用情况

时间:2013-11-22 21:10:29

标签: sql sql-server postgresql database-design unique-constraint

我正在尝试制定一个约束,使特定用户的ID保持唯一 每个用户都是世界上的一个独立实体,因此2个人{1} {1}不是问题。我只是不希望一个人有两次相同的身份。

例如: 这是可以接受的:

id

这不行:

User   Id
John   1
John   2
Alice  1
Alice  2

2 个答案:

答案 0 :(得分:3)

只需在CREATE TABLE语句的两列上添加Unique constraint

CREATE TABLE person(
   ...               -- more columns
   username text 
  ,person_id int
  ,UNIQUE (username, person_id)
);

就是这样。我看到@Hamlet@Frank已经同样发表了评论。

答案 1 :(得分:0)

在这两列上创建唯一索引也可以。这通常是强制执行约束的情况。