我有一个数据库,其中余额和付款需要被分解成不同的“钱桶”,以显示它们是如何分配的。例如,有本金、利息、滞纳金、退票费、杂项等等。有多达10个不同的钱桶。
这两种方法中哪一种是设计数据库的更好方法,为什么?
选项A
PAYMENTS
AccountId
// Other payment-related columns
TotalPaid
PrincipalPaid
InterestPaid
MiscPaid
BadCheckChargesPaid
...选项B
PAYMENTS
AccountId
// Other payment-related columns
TotalPaid
PAYMENT_DETAILS
PaymentId
PaymentTypeId
AmountPaid在大多数情况下,只使用1-3种不同的余额类型
发布于 2011-01-27 01:21:36
选项B对我来说似乎更好。一个决定性的问题是你的应用程序是否被设计成像这样显示细节:
Item Amount
-------------- ---------------
Principal $10.00
Interest $1.11如果是这样的话,规范化的版本不仅“更正确”,而且实际上以更接近应用程序所需的格式存储数据。
对我来说,最大的问题是,您是将付款总额存储在付款记录中,还是从详细信息中导出。
https://stackoverflow.com/questions/4807556
复制相似问题