关于数据库字段的问题?
各位大侠:
现生产部门想做个表统计车间的生产情况,车间大约有8个生产工序,每个生产工序最少的都有两个人共同完成,有些工序有时需要四个人共同完成,工序名称如下:裁切、定位、打磨、冲孔、烧焊、校正、组装、质检。一个订单,以“裁切”这道工序来说,可能会由至少三个人来完成,如果要建表的话,单是这道工序就必须有“裁切1”、“裁切2”、“裁切3”这几个字段,该表如果要包含完8个工序,每个工序都最大限度有4个制作人,那么这个表就必须包含有32+1(订单号)个字段组成,请教一下大家:
1、这样建表合理吗,因为并不是每个工序都由四个人来完成,有时可能两个人,有时可能只有一个人,这时一条记录里可能会有很多字段是空的,每个月几千条记录,一年会有几万条记录,会否造成很大的浪费?
2、如果把每道工序分开,单独做一个表,这样虽然可以避免字段的浪费,但就必须建8个表,到时想统计某个人这8道工序都做了多少东西时,要把这8个表按订单号连接起来,会不会很麻烦?
公司用SQLServer2000+PowerBuilder9.0,希望各位大侠指点一下,先预祝大家新春快乐!谢谢!
------解决方案--------------------行列是可以转换的
你可以设计一个表包括以下字段
开始时间 订单 员工 工序 子工序 数量 完成时间
这样每个订单在每个工序都是用几条数据来表示,工作量统计也非常清楚
------解决方案--------------------表1:
工序编号 工序名称
1 裁切
2 定位
…… ……
表2
姓名 工序编号 备注
张三 2 定位2
李四 1 裁切3
…… …… ……