【发布时间】:2016-06-28 15:18:26
【问题描述】:
我目前正在为我正在进行的项目设计一个关系数据库。
我不确定最好的方法,我会尽力解释。
如果我有一个实体:
SALE(SALE_ID, SALE_TYPE, SALE_AMOUNT, CUSTOMER_ID)
和,
PURCHASE(PURCHASE_ID, PURCHASE_TYPE, PURCHASE_AMOUNT, CUSTOMER_ID)
如果每个实体中的PURCHASE_TYPE和SALE_TYPE只能是现金 OR 卡..
是否值得使用这种结构创建一个名为 E.g. Transaction Type 的新实体
TRANSACTION_TYPE(TYPE_ID, PAYMENT_TYPE)
然后将PURCHASE_TYPE 和SALE_TYPE 替换为TYPE_ID 作为其他2 个实体的外键?
提前感谢您的任何回复 :) 我希望我解释得足够好并使用了正确的术语。
【问题讨论】:
-
由于类型的数量本质上是恒定的,因此您可以使用
Enum数据类型。 -
有没有办法在概念和逻辑设计阶段使用“枚举”来表示,因为这就是我现在需要交付的全部内容。还是应该只保留原来的结构?
-
Fwiw,我有一个单独的付款类型表。这允许您在未来添加付款方式(例如 PayPal),而无需修改您的结构。
标签: mysql oracle entity-framework rdbms