我正在使用 MS Visio 对数据库进行建模,模型的一部分包含事务类别 - 父表具有事务 ID、时间戳、金额和事务类型。有三个子表 - 支票、银行转账和信用卡,它们都通过 transactionId 与父表相关。
在 SQL Server 中是否有实现这种关系的特定方式,或者它只是一个概念模型,将实现留给我?如果是后者,如果表都与 transactionId 相关,为什么在父表中有一个 transactionType 列 - 只是为了缩小我的查询范围?也就是说,如果父表中的一行将“支票”指定为事务类型,我知道我只需要查询/加入支票子表吗?
我突然想到 - 这只是一个 ISA 层次结构,在这种情况下,我将创建三个不同的表,每个表都包含 ISA 父实体中标识的列?