D
dqj
Unregistered / Unconfirmed
GUEST, unregistred user!
表:顾客
顾客ID 姓名 身份证地址 通信地址 销售日期 销售门市 售货凭证号 联系电话
在一些书上这样不符合标准,有冗余,比如 销售日期 销售门市 售货凭证号三个字段可以从另一个表销售得到
联系电话顾客有的有一个号码,有的有二个,甚至三个,所以联系电话可在另一个表中
折分后如下:
表:销售
销售ID 曰期 门市 售货凭证号 商品编码 数量 单价
表:顾客
顾客ID 姓名 身份证地址 通信地址 销售ID
表:联系电话
顾客ID 员工ID 往来单位ID 电话号码 传呼 传真
表:员工
员工ID 姓名 身份证地址 通信地址 文化程度 推荐人 工作时间 辞职时间
表:往来单位
往来单位ID 单位简介 联系人
表:编码
商品编码 商品名称 商品简介
关系
表:编码 表:销售
商品编码-----商品编码 表:顾客 表:联系电话
销售ID-----销售ID
顾客ID-------顾客ID 表:员工
员工ID--------员工ID 表:往来单位
往来单位ID-----------------往来单位ID
1.这样建表对不对?如果以后有仕么变化,如增加字段或减少字段,对数据的连续性有无影响?
2.表:联系电话 有大量的空值,如录入顾客ID,则员工ID和往来单位ID必是空值,丕有有电话的
不一定有传呼,有传真的不一定有手机,必然会有空值,
3.数据库SQL7.0,表:销售和表:顾客大约十万行记录,如果表分得很细,一个查询会联接许多表,是否影响性能?
4.现在建的表符合第几范式?