那不就是BOM的算法嘛,用子父关系,再用递归就行了

解决方案 »

  1.   

    三个字段: bomID   parseID   lay_no
              物料ID  所属父ID  层数
      

  2.   

    三个字段: bomID   parseID   lay_no  yn_last_lay
              物料ID  所属父ID  层数     是否末层
    不是要我源码都贴出来吧`~~~   思想是这样,自己动脑想想
      

  3.   

    单说这个树的话,一个表自包含就ok了id, parentid, nodename如果你的不同级别对应不同的,复杂的数据项,建议这样做
    id,parentid, nodename, nodetable(这个字段记录此条记录的详细信息在哪张表中)
      

  4.   

    关于那个BOM算法,你能给贴上源码吗?你这个数据库表的建法思想我搞清楚了。
      

  5.   

    这不就是树结构吗?树的建立说白了就是一个数据排序的问题.可以用递归,也可以用业务码排序.
    1:如果用递归算法,你的表结构类似如下:
    ()
    create table XT_DW
    (
      DWXH  NUMBER(9) not null,
      DWBH  VARCHAR2(20),
      DWMC  VARCHAR2(30),
      DWFXH NUMBER(9)
    )
    comment on column XT_DW.DWXH
      is '机构部门序号';
    comment on column XT_DW.DWBH
      is '机构部门编号';
    comment on column XT_DW.DWMC
      is '机构部门名称';
    comment on column XT_DW.DWFXH
      is '父序号';
    如果你用是的oracle,则很简单,oracle支持递归查询,如下:
    select dwxh,dwbh,dwmc,dwfxh from xt_dw connect by  prior dwxh = dwfxh start with dwfxh = 02:如果不想用递归,则可以看我的解决办法:
    http://blog.csdn.net/lcllcl987/archive/2005/06/16/395992.aspx
      

  6.   

    faint。。原来这已经是ERP领域的知识了。。算是开眼界了,呵呵。。
      

  7.   

    谢谢
    lcllcl987(毛爷爷)
    guyizh(小钧)
    提供的帮助。
    也谢谢大家的热心参与,问题解决了!~结贴