在子表中,我需要使用复合键强制执行唯一约束,其中两列中的一列位于父表中。
情况是,在我的应用程序中,用户可以拥有多个不同类型的帐户。其中一种类型表示来自外部源的帐户,该帐户具有自己的id(foreign_account_id),其他类型是内部的,并且只有account_id主键。现在,不同的用户可以从外部源连接到同一个帐户,但每个用户只能连接一次。所以我需要一个基于users_id和foreign_account_id的复合唯一键。 这是可能的还是有一个很好的解决方法(例如,重复子表中的users_id列是不错的做法)?
这是结构
帐户(父母)id (primary)
users_id
description
....
accounts_foreign(孩子)
accounts_id (primary, fk for accounts)
foreign_account_id
info1
info2
...