我将为MySQL创建一个双向记账系统的数据库。
我最近阅读了这篇文章:http://homepages.tcp.co.uk/~m-wigley/gc_wp_ded.html,发现在此文章中,有三个表ACCOUNT、JOURNAL和POSTING会很方便。
在这个选项中,“isDr”字段是一个布尔值。如果账户被借记,则“isDr”字段将包含值“true”,否则为“false”。而“amount”字段始终具有正值。
我最近阅读了这篇文章:http://homepages.tcp.co.uk/~m-wigley/gc_wp_ded.html,发现在此文章中,有三个表ACCOUNT、JOURNAL和POSTING会很方便。
ACCOUNT(accountID, accountName)
JOURNAL(journalID, journalType)
POSTING(postingID, journalID, accountID, amount)
这篇文章描述了,如果一个账户被借记,'amount'字段的值将为正数,否则为负数。
现在对于上面的POSTING表,我还有另外两个选项...
(1) POSTING(postingID, journalID, accountID, isDr, amount)
在这个选项中,“isDr”字段是一个布尔值。如果账户被借记,则“isDr”字段将包含值“true”,否则为“false”。而“amount”字段始终具有正值。
(2) POSTING(postingID, journalID, accountID, debitAmount, creditAmount)
在这里,如果账户被借记,则将金额存储在“debitAmount”字段中,否则将其存储在“creditAmount”字段中。
那么,到底从上述三个选项中选择哪一个更好呢?