代码之家  ›  专栏  ›  技术社区  ›  Emma

如何在MySQL中存储对一个或多个作业的资源分配

  •  1
  • Emma  · 技术社区  · 15 年前

    我一直在考虑为每个资源使用一个表来跟踪分配,但是我想知道是否有一个理想的解决方案。

    TABLE equipment (
        id,
        type,
        PRIMARY KEY (id)
    )
    TABLE technicians (
        id,
        name,
        level,
        PRIMARY KEY (id)
    )
    TABLE jobs (
        jobno,
        starts,
        ends
        PRIMARY KEY (jobno)
    )
    TABLE table equipment_assignments (
        id,
        jobno,
        PRIMARY KEY (id, jobno),
        FORIEGN KEY (id) REFERENCES equipment(id),
        FORIEGN KEY (jobno) REFERENCES jobs(jobno)
    )
    TABLE table technician_assignments (
        id,
        jobno,
        PRIMARY KEY (id, jobno),
        FORIEGN KEY (id) REFERENCES technicians(id),
        FORIEGN KEY (jobno) REFERENCES jobs(jobno)
    )
    
    1 回复  |  直到 15 年前
        1
  •  1
  •   Will A    15 年前

    另一种方法是引入一个“设备和技术人员”引用的资源表,或包含对“设备和技术人员”的可空引用的资源表。这样就有了资源分配,而不是实体特定的分配,我认为这些方法中的前者更容易引入新的资源类型。