以上是表关系,A_Product 是产品
A_Record  是工序
A_Step    是工步/* 例如 一个产品有分几道工序加工,工序又分几步做完,所以叫工步*/A_days    是每个员工每天所做相关产品 的产量\质量 现在我把这个表的关系弄成这样,但是在输入员工绩效的时候,  还可以输入不属于这个产品的工序和工步..怎么限制呢?也就是A_Days 表里的 product_id  record_id  step_id

解决方案 »

  1.   

    A_days表的三个字段全是外键就行了呀create table a_days
    (
    product_id int REFERENCES product(product_id),
    record_id int REFERENCES record(record_id),
    step_id int REFERENCES step(step_id)
    )
      

  2.   

    是外键. 
    但是这三个字段product_id  record_id  step_id
         例子  APPLE       粘接        点胶
                
    输入 NOKIA 也可以输入 粘接        点胶
      

  3.   

    A_Product -- 是产品
    (Product_ID int pkey, Product_Name)A_Record  -- 是工序
    (Record_ID int pkey, Product_ID int fkey, Record_Name)A_Step    -- 是工步
    (Step_ID int pkey, Record_ID int fkey, Step_Name)A_Days(
      ID int pkey
     ,Step_ID int fkey -- 仅保留这个外键
     ,otherAttrib)在应用中选产品、工序、工步
      

  4.   

    因为每个工步所隶属的工序、产品信息在A_Step、A_Record表里已经指定了。
      

  5.   


    Time Space我也想到这点,如果输入资料的时候,就麻烦了.因为NOKIA  apple 两个产品.会有同样的工序,工步这个怎么处理?
      

  6.   

    例如
    product: 
     1, 桌子
     2, 椅子record:
     1, 1 /*FKto桌子/, 安装
     2, 1 /*FKto桌子/, 油漆
     3, 1 /*FKto桌子/, 包装
     4, 2 /*FKto椅子/, 安装
     5, 2 /*FKto椅子/, 油漆
     6, 2 /*FKto椅子/, 装箱step:
     1, 2 /*FKtoRecord.2*/, 打磨
     2, 2 /*FKtoRecord.2*/, 上油漆
     3, 5 /*FKtoRecord.5*/, 打磨
     4, 5 /*FKtoRecord.5*/, 上清漆
    ...
      

  7.   

    这样的话,要做一个选择
    选择产品
             1.APPLEA9
    出现APPLEA9的工序
    ||||||||||
    再选择 
               2.粘接
    |||||||||||
    出现粘接的工步
    再选择
              3.工步 然后输入生成量什么滴,这个用ASP实现.但是在表里一样没记录,这笔资料属于哪个产品.
    按ID肯定不现实.   
      

  8.   

    select Product_Name, Record_Name, Step_Name, d.*
    from A_Days d
    join A_Step s on s.Step_ID = d.Step_ID
    join A_Record r on r.Record_ID = s.Record_ID
    join A_Product p on p.Product_ID=r.Product_ID
    即可
      

  9.   

    在ASP应用中,你可以先将A_Product,A_Record,A_Step的相关信息从库里读出了,用javascript数组动态更新下拉列表的方式让用户选择。
      

  10.   

    在日表里有step_id通过A_Step,A_Record,A_Product表的外键->主键关联就能查到每条记录对应的产品