【发布时间】:2009-05-17 21:13:06
【问题描述】:
我正在编写一个在线项目资产跟踪器,但我是 MySQL 新手。跟踪此类项目、用户和资产的最佳方式是什么?我有 3 个用于资产、用户和项目的表。用户应该拥有项目和资产。资产可以是多个项目的成员,并且项目应该能够被多个用户看到。
我想到的第一种方法是在每个项目上都有一个 mediumtext 字段,其中包含它链接到的每个资产的 id。每个资产也将有一个 mediumtext 将具有它链接到的每个项目 id。但这是一个问题,因为我无法真正进行搜索,而无需解析文本以找出它所附加的项目/资产。
另一种无需解析的解决方案是为链接信息设置单独的表,例如,将有一个资产表,其中包含资产 ID、项目 ID 和用户 ID,如果它被分配给另一个项目或用户,该表中将有另一个条目。但是,此解决方案将包含具有多个条目的资产。
另一种方法是让网站在创建项目时创建一个表,该表将存储资产和用户信息。由于可能有数千个项目,这将很快挤满数据库,据我所知,在 MySQL 上创建表比条目更重。
我倾向于第二种解决方案。有谁知道更好的方法吗?
【问题讨论】:
-
您的问题标题涉及分层数据(这是一个非常复杂的主题),但我没有在任何地方看到您的问题正文中提到的内容......
标签: mysql database database-design