【问题标题】:Database design for projects项目数据库设计
【发布时间】:2013-02-09 08:55:06
【问题描述】:

我有一个带有 2 个表的旧数据库:

table1=标准项目

table2=所有项目

该数据库最初设计为单个项目的工具。

我喜欢有一个单一的数据库来处理所有项目,但这需要一个新的设计 - 当需要数据库来执行此操作时,最好的设计是什么:

  1. 复制标准项目
    一种。大约 50 个标准项目和项目经理 (PM) 经常需要制作 2-3 个相同项目的副本。
  2. 对步骤 1 中的新项目进行更改
  3. 仅对步骤 1 中的新项目进行查询
  4. 多个项目经理可以处理步骤 1-3
  5. 项目期间可能会更改新项目(步骤 1)
  6. 项目完成后,需要将新项目与所有项目一起存储在表中

在这方面需要帮助: 一种。当我需要复制项目(有时是几个相同的项目)时,最佳做法是什么 湾。我如何在 PM 之间分隔新项目 C。我如何将所有项目放在 table2 中

我真的需要关于这个最佳实践的帮助。

【问题讨论】:

    标签: ms-access database-design


    【解决方案1】:

    不需要两个表格,您可以用标志和日期指示项目在工作方面的位置。考虑下面的草图。

    项目

    ProjectID
    Contact -- fk to PM id. This is just the lead, all other contacts are
               in the PersonsProject tables
    Etc
    

    项目 -- 全部

    ID -- pk
    ProjectID - fk to Project
    AssignedTo - fk, but it all depend on whether a person is in charge of an item
    Stage and / or status -- fk to list
    Description
    Notes
    Created date
    Completed date
    Deleted date
    Deleted reason
    Created by
    Deleted by
    

    ID
    Etc
    

    PersonsItems 或 PersonsProject

    PersonID
    ProjectID
    Notes
    etc
    

    可能是分配项目的表格

    PersonID
    ProjectID
    ItemID
    

    此外,如果您的可能项目列表有限,您可能需要一个项目列表表,在这种情况下,ItemListID 将进入项目表,而描述将出现。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-10
      • 1970-01-01
      • 1970-01-01
      • 2017-10-24
      • 1970-01-01
      • 1970-01-01
      • 2019-04-22
      • 2011-04-06
      相关资源
      最近更新 更多