Mysql 清单应用程序的数据库结构

Mysql 清单应用程序的数据库结构,mysql,sql,database,database-design,Mysql,Sql,Database,Database Design,我想为我们的团队创建一个清单web应用程序。我将使用MySQL。我对高效的数据库设计不太了解,所以我需要一些指导 将有项目和清单分配给他们。每个项目都会有一些默认的检查表,如果用户添加,还会有一些自定义的检查表 到目前为止,我正在考虑使用以下表格: 使用者 --ID、姓名、密码、标题等 计划 --身份证,姓名 检查表 --ID、名称、isDefault 清单项目 --ID、文本、状态 我应该使用哪些外键字段来具有这种结构?如何将默认检查表连接到项目?快速生成模型: 每个项目可以有零个或多个检查表

我想为我们的团队创建一个清单web应用程序。我将使用MySQL。我对高效的数据库设计不太了解,所以我需要一些指导

将有项目和清单分配给他们。每个项目都会有一些默认的检查表,如果用户添加,还会有一些自定义的检查表

到目前为止,我正在考虑使用以下表格:

使用者 --ID、姓名、密码、标题等

计划 --身份证,姓名

检查表 --ID、名称、isDefault

清单项目 --ID、文本、状态


我应该使用哪些外键字段来具有这种结构?如何将默认检查表连接到项目?

快速生成模型:

  • 每个项目可以有零个或多个检查表
  • 每个检查表可以有零个或多个项目
  • 每个用户可以分配零个或多个检查表项目
  • 我认为这可以做得更好,但这是你可以开始的地方


    有一些很好的资源可以帮助您根据自己的需要定制一个模式。我过去常常从头开始,但总是发现自己在前进的过程中添加了字段和表。当你有一大堆代码需要反复适应所有这些事后的想法时,这会变得非常痛苦。完成后,让模式尽可能接近您想要的方式是正确应用程序设计的关键部分

    我建议您查看、摘自并绘制一个db模型的半详细草图。从这样的模型中,您可以使用诸如a或&friends之类的工具在应用程序级别强制执行它,或者使用好的老式方法,在应用程序中自己编写这些约束


    快乐编码

    谢谢你的回答。那么默认检查表呢,我可以用这个结构实现吗?创建项目时,我是否应该生成默认检查表的副本以及默认状态的检查表项目行?如果您希望在创建项目时创建默认检查表和项目,那么您可以这样做。