SQL中设计为一张表好还是二张表好?

[复制链接]
查看11 | 回复4 | 2010-1-4 18:00:24 | 显示全部楼层 |阅读模式
可以定义一个 字典表 (主要字段 有 cid,cname,cparent,...)cid编号cname 数据的名称cparent 父节点整体来说就是一个 层次的结构设计如:01,商品类别 ,root 0101 , 食品类,010102 , 服饰类,01........02,商品状态 , root0201,打折, 020202,降价, 02.............当需要 商品类型的时候select * from 字典表 where cparent = '01'因为字典表是你自己设计的 所以 父节点你也知道是多少这样 其他的 有关此类的 简单数据 都可以用在一个表那传说中的 N大 范式 也就那么回事了 我个人感觉 出一个字典表 你自己感觉一下 我这样的设计如何?要是没明白的话 我可以 给你细点说说
回复

使用道具 举报

千问 | 2010-1-4 18:00:24 | 显示全部楼层
一张表吧.即不冲突,看着也明白,还有你的第一张表感觉不多余么?有时候是节省空间才这样设计的,比如你的第一张表中如果名称字段下'A'换成字节数比较多的名称'零食'.1个字符比2个汉字节约空间.如果数据量比较大,那么就2张吧.不多的话就1张吧.很多的测试数据都是文本的,那个动不动就上M数据,其实都是汉字占了大小.
回复

使用道具 举报

千问 | 2010-1-4 18:00:24 | 显示全部楼层
个人以为:字段数以及数据量不大时完全可以采用一张表,但是从规范性以及将来的可扩展性考虑,还是建议两张表.
回复

使用道具 举报

千问 | 2010-1-4 18:00:24 | 显示全部楼层
一表的添加删除修改比较简单二表的数据冗余较少
回复

使用道具 举报

千问 | 2010-1-4 18:00:24 | 显示全部楼层
你有没有说各表属性间的依赖关系怎么确定的范式?按照E-R化简的规则是应该合成一张表的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行