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

标签 mysql database

我有不同类型的资源可以分配给工作。目前,我的资源是技术人员和设备。我希望能够存储旧的分配(也就是在引用作业表的资源表中没有静态列)。

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

我的表格是(用于说明目的):

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)
)

最佳答案

另一种方法是引入设备和技术人员引用的资源表,或者包含对设备和技术人员的 NULLable 引用。然后您进行资源分配而不是特定于实体的分配,我认为这些方法中的前者更容易引入新的资源类型。

关于mysql - 如何在 MySQL 中存储对一个或多个作业的资源分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3445864/

相关文章:

mysql - 在nodejs中可以同步mysql查询吗?

php - 为什么我的图像文件无法用 PHP 上传?

database - 微服务-新旧版本之间的数据库兼容性

android - 将 CSV 文件导入 Android Apps Sqlite 数据库

mysql - 如何在两个表中建立外键关系

mysql - 如何在 MySQL 上进行高级选择

sql - 在限制行大小和表成员资格的同时加速内部联接和子查询

php - 有没有更智能的方法来使用 PHP 和 MySQL 加载多对多关系?

PHP MySQL 查询不插入

php - MySQL 插入具有不同列名的表