我正在用这些表格写一个股票经理:
我想知道组织表格的最佳方法是什么。
我的主要问题是如何创建sales
和purchase
,因为它们的字段几乎相同,但customer
和producer
完全不同。
我想到了两个选择。第一个是sale
,purchase
,sale_item
和purchase_item
中的重复字段。第二个是创建一个名为order
的表和一个用于存储类型(sale
或purchase
)的列,对sale_item
和purchase_item
执行相同的操作,并创建一个名为person
的表,其中包含名为customer
和producer
的其他表继承person
。
最好的方法是什么?
我正在使用Django和Postgresql。
答案 0 :(得分:1)
您应该将销售和购买分成两个单独的表(以及sale_item和purchase_item。)即使它们有重复的列 - 现在 - 它们代表不同的概念。
将来,很容易想象这些概念中的任何一个都可能以某种方式发生变化,以便基础表不具有所有相同的列。
拥有两组独立的表也可以更容易查询。
答案 1 :(得分:0)
根据您的实体规范化表格是正确的方法。
此外,我会考虑您希望这些实体在同一列表视图中合并在一起的可能性。
查看您所指的实体,我认为sale_item和purchase_item很可能可以互换使用,所以我会把它放在同一个表中。