繁体   English   中英

MySQL表的命名约定

[英]Naming conventions for MySQL tables

我想获得一些意见,因为我正在考虑为新应用程序创建结构,并且我在为表的名称而苦苦挣扎,因此我想也许您可以给我一些想法。 应用拥有用户,用户可以创建项目,而项目可以具有多个关键字。 因此,用户与项目之间是一对多的关系,而项目与标签之间是多对多的关系。

因此,我认为拥有表users项目表应该是users_projects 但是关键字呢? 应该是users_projects_keywords吗? 数据透视表又如何呢?因为我认为将它命名为users_projects_to_users_projects_keywords或类似名称有点不好。 我将不胜感激。

编辑:我一直认为一对多关系应称为x_y,其中y属于x。 这不是一个好习惯吗?

我会有usersprojectskeywordsproject_keywords 我将使用外键来定义表之间的关系。 例如, projects将具有一列诸如createdby_userid ,它引用了users.user_id列。

一个想法:

可能有三个字典:

  • users应具有id和其他数据。
  • projects也是如此。
  • 等等表keywords

然后创建“链接”(关系)表:

  • users_projects与列id, id_user, id_project
  • projects_keywordsid, id_project, id_keyword

编辑 :也许将id_user包含到@Laurence提到的表projects确实是合理的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM