以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  设计软件时,不同数据表中同名列的处理方式  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=105223)

--  作者:andy-1024
--  发布时间:2017/8/14 17:44:00
--  设计软件时,不同数据表中同名列的处理方式
软件设计过程中,有一个产品信息表,其中有货号,品名,规格,单位等列,另外一个表,比如库存流动表,里面也有货号,品名,规格,单位等列,货号列是区分不同商品的列。

那么现在有两种方式:

1. 两个表均有这4列,这样的话,打开库存流动表的时候,提取数据速度会很快,但是牺牲了存储空间,因为需要存储品名,规格和单位列,数据表会有些大;
2. 库存流动表中没有品名,规格和单位列,打开库存流动表后,通过货号从产品信息表中提取相应的信息,这样的话,库存流动表会瘦身,但是牺牲了处理速度。

对于小规模数据库的话,我想任何一种方式都不是问题,毕竟现在电脑性能已经很强大了,如果对于数据量大的数据库的话,哪一种处理方式会相对最优化呢?
还是有除上面两种方式外其它的数据处理方式?
谢谢老师。

--  作者:有点甜
--  发布时间:2017/8/14 18:03:00
--  

大数据的话,设计数据库的时候,是允许有适当数据冗余的。因为存储空间相对廉价,通常都会用空间换取速度。

 

但数据冗余会带来管理上的麻烦,数据之间修改同步等,要控制起来也比较麻烦。

 

结合自身需求,如果查询数据量过大,就不要连接查询获取数据。


--  作者:andy-1024
--  发布时间:2017/8/14 19:27:00
--  
 好的,明白了,非常感谢!