这样的表应该如何设计???

hdvcd 2003-11-21 01:19:18
先说一下业务情况:仓库存放零件和刀具,一把刀是由若干个零件组合而成的,比如说:一把刀=一个刀柄+一个刀杆+一个刀头 等等。现在有一个问题:一个零件除了有零件编号(唯一)、零件名称等等属性之外,还有一个属性是可配零件。意思就是说比如零件编号0001的,假设它是刀柄,它可以配零件0002(某个刀杆)和零件0003(某个刀头)等等,当然对0002和0003也有同样的信息。一个零件可能只能配1个零件,也可能能配10几20几个零件(不会太多),请问应该怎样设计表的字段呢?是放在零件表中还是另设计一张表???多谢各位高手!!!
...全文
48 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
goodboycwy 2003-12-18
  • 打赏
  • 举报
回复
最好是自己设计另外一个表,要考虑好以后数据库的扩从问题,我现在的好多问题都是因为增加字段引起的,其实另外建一个表特别方便。 txlicenhe(马可) 的方法也很不错
hdvcd 2003-12-18
  • 打赏
  • 举报
回复
to:twb()
分不够一定可以加,诚心向各位请教!
jxpanda 2003-12-18
  • 打赏
  • 举报
回复
把配件单独做开来,单独建个表,可能好处理些。
tangyanjun1 2003-12-18
  • 打赏
  • 举报
回复
我觉得应该设计成三张表。
一张基本零件表。
编号,标志,说明...

这张表的用途就是说明这些零件的属性。

另一张表
刀具编号,零件编号

这张表里存放一个道具需要有哪些零件组成。

第三张表
零件编号,配零件编号

这张表存放和某个零件相配的那些所有的零件编号

这样的设计思路比较清晰。

我认为其实 可配零件 是零件的一个属性。
但是这个属性是个多值属性,按照数据库设计的规范,这时可以另建一张表,来存放这个属性。
twb 2003-12-18
  • 打赏
  • 举报
回复
分太少了
不告诉你
  • 打赏
  • 举报
回复
txlicenhe
说的很对
hdvcd 2003-11-24
  • 打赏
  • 举报
回复
马可大哥,恕小弟愚笨,我还是不大看的明白:<
zjcxc 元老 2003-11-21
  • 打赏
  • 举报
回复
同意楼上的.
txlicenhe 2003-11-21
  • 打赏
  • 举报
回复
如上,要查A的配件时,先查出配件表中该编号对应的标志为1的资料,查从该编号对应的标志为0的资料中任查一个。
txlicenhe 2003-11-21
  • 打赏
  • 举报
回复
基础资料表:  编号,标志,说明...
配件表:
   刀具编号, 零件编号, 用量 ...

注: 标志为1表示为刀具,否则该零件编号是可选件(一个实际上不存在的东西,是几种零件的组合。)
eg:
刀具编号为 A 的零件包括 必选01,02,且从 03,04,05中任选一个

处理:
基础资料表中
A 1 刀具
A1 0 零件组合
则配件表数据为
A 01 1
A 02 1
A A1 1
A1 03 1
A1 04 1
A1 05 1


希望你能看懂。

34,875

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧