UML:可选外键

UML : Optional Foreign Key

我现在坐着有点头疼。

我有两个实体 PAYMENT ORDERACCOUNT

PAYMENT ORDER
PK - ID
FK - DEBITED ACC
FK - CREDITED ACC


ACCOUNT
PK - ACCOUNTNUMBER

当贷记帐户不是我的金融机构的帐户时,我很难找到逻辑。它不能再是外键,因为该帐户将不包含在 ACCOUNT table.

你们有解决方法吗?

编辑

问题是:我是否必须将 CREDITED ACC 上的约束更改为无?或者我可以保持原样吗?

我建议您让 ACCOUNT table 包含的不仅仅是一个 ACCOUNTNUMBER 列。

如果这只是一个玩具示例,请添加一个布尔值来指示此帐号是内部帐号还是外部帐号。如果这将是一个操作系统,请考虑添加一个 FINANCIAL_INSTITUTION table 并将其主键用作 ACCOUNTNUMBER table.

中的外键