1
4
你的桌子第二个设计更好,而且是“标准化”的。
您基本上遵循一种称为“子类型/超类型”的数据库设计/建模模式 用于处理事务之类的事务,其中有许多公共数据和特定于每个事务类型的一些数据。 有两种公认的方法来模拟这一点。如果变量数据最小,则将所有内容保存在一个表中,事务类型specfic属性保存在“nullable”列中(这基本上是你的情况,你做了正确的事情!)。 另一种情况是“不常见”数据因事务类型的不同而变化很大,在这种情况下,您有一个包含所有“常见”属性的表,每个类型都有一个包含该“类型”的“不常见”属性的表。 然而,虽然“贷款”、“购买”和“销售”是有效的交易。我认为库存是一个不同的实体,应该有一个自己的表。实质上,“贷款”wll添加到库存交易,“采购”wll将库存状态更改为可销售,“销售”wll从库存中删除项目(或将状态更改为已销售)。一旦一个项目被添加到库存中,只有它的状态应该改变(它仍然是一个小部件,小提琴或者别的什么)。 |
2
1
这里有问题吗?你只是想确认它是可以接受的吗?
|
Community wiki · SQL语法新手 1 年前 |
KateMak · 是否将多行中的多列与唯一id组合? 1 年前 |
Karuna · SQL中列内的筛选器[重复] 1 年前 |
Irvan Affandy · 为另一个选择选择声明的键 1 年前 |
Community wiki · 这个MySQL语句出了什么问题? 1 年前 |
Community wiki · 优化从同一表中提取的多列的查询 1 年前 |