【发布时间】:2017-04-24 14:50:45
【问题描述】:
我有一个主用户表,其中包含用户的一些常见属性(姓名、电子邮件、电话),然后我还有 2 个表(比如说 x 和 y),其中包含两种类型用户的不同属性。你可能会说 (x1, x2, x3) 和 (y1, y2, y3)。一个用户可能只有一种类型。我在 x 和 y 表中有一个“user_id”列和一个主键列。 'user_id' 列引用了用户表中的 'id' 列。如果我删除 x 和 y 表中的“id”列(用作主键)并使用“user_id”列作为主键和外键,是否正确。我正在使用 postgres 9.6。
【问题讨论】:
-
One user may only be of one type.这可能会使事情变得有点复杂,因为 x 和 y 都需要排除约束来禁止在另一个 (y,x) 表中存在相同的键。
标签: mysql sql database postgresql