现在有一张表,求大神用数据库第一第二范式把它拆分成多张表
程序编号 | 程序名称 | 持有公司 | 持有人 | 持有人电话 | 持有人内线电话 | 使用公司 | 使用部门 |部门负责人 | 部门负责人内线电话
按照表的分类,大概是三个表.(程序信息表)(持有人信息表)(使用者信息表)
程序信息表(程序编号,程序名称)
持有人信息表(持有人编号,关联程序编号[外键],持有公司,持有人,持有人电话,持有人内线电话)
使用者信息表(使用者编号,关联程序编号[外键],使用公司,使用部门,部门负责人,部门负责人内线电话)
程序表:[程序ID,程序名称]
持有公司:[持有公司ID,公司名称]
持有人:[人员ID,人员电话,内线电话]
持有人-持有公司:[持有人ID,持有公司ID]
程序-持有人:[程序ID,持有人ID]
使用公司:[使用公司ID,使用公司名称]
使用公司人员:[使用公司人员ID,内线电话]
使用公司部门:[使用公司部门ID,使用公司部门名称]
使用公司部门-使用公司:[使用公司部门ID,使用公司ID]
使用公司人员-使用公司部门:[使用公司人员ID,使用公司部门ID]
使用公司部门负责人:[使用公司部门ID,使用公司人员ID]
@eternal Chen: 冒号前面是表名,冒号后面括号里是表字段
先弄清楚你要的是几范式,其实,考虑你的程序,效率才是最重要的目标,反范式设计有时候对性能能提升很多