2012-03-26 63 views
2

我正在设计一个在线会计系统作为大学项目。我有以下简单的交易。为会计系统设计的MySQL表格

1.Sales现金$ 300

2.Cash史密斯挖洞$ 250

3.Electricity账单支付了$ 50

enter image description here

我已经提到Double Entry Accounting in a Relational Database和设计上面交易表(减号表示金额记入)。 id 1和2属于交易1,id 3和4属于交易2等等。我如何将每两行标识为MySQL数据库中的单个事务。例如,如果要选择的第一个事务如何执行,因为两行之间没有关系。如果这种设计听起来不太好,你可以提出一个替代方案。

谢谢你提前

+0

你可以为你的表添加transaction_id文件。 – Sara 2012-03-26 12:59:36

+0

Thanx为响应。我想那么它必须手动添加为每个事务,并且我不能自动递增该字段。我无法找到连接不同行中的帐户的方法。 – Rav 2012-03-26 13:04:26

+0

从技术上讲 - 从严格规范化的观点来看,你所得到的每笔交易有2个条目。您可以将交易ID保存在一个单独的表中,并在那里自动递增它们,然后在此“交易”表中引用它们。当然,如果你想在万亿次交易中保存万亿的信息,自动递增的整数可能不会像应用程序确定的唯一字符串那样有用...... – CD001 2012-03-26 13:15:33

回答

1

你应该放弃两线设计,除非真的有必要。我会合并行并添加一个额外的字段,您可以存储,如果它是现金或不是,并且金额值将为+当贷记和 - 如果借记(或扭转,我不善于会计:))

+0

但是,当我尝试这种方式时,比我们无法合并的两个帐户,我们可以吗? – Rav 2012-03-26 13:10:57

+0

恩,举个例子。你的意思是同一个事务有两个以上的行吗?如果是这样,有什么区别? – slash197 2012-03-26 13:14:19

+0

我的意思是这样的一个条目 注销坏帐。 DR - 呆账准备 DR-GST CR-Recievables 上表中的三个帐户将占用三行。我是设计新手,你可以告诉我如何合并行并像你说的那样添加额外的字段。 :) – Rav 2012-03-26 13:30:16

0

好作业

我唯一可能增加的是借方和贷方的两个数字列,这看起来就像是在课本或旧簿记中的日记,它会更明显一些,如果你喜欢,你当前的金额栏可以通过借记 - 贷记计算

我不认为你需要使它成为关系型,除非你想要一张特定的账户图表作为表格,更多的compl冰冷而不那么优雅。但是,为了更灵活,您可以从期刊中生成实时账户图表。