Database design 使用单个关联表链接多对多表

Database design 使用单个关联表链接多对多表,database-design,database-normalization,Database Design,Database Normalization,我正在创建一个主要将数据关联到数据的数据库,我不想限制哪些表记录可以关联到其他表记录(将在UI端处理) 我没有为每个多对多关系创建关联表,而是考虑创建一个“链接”表,该表使用由[tablename]+[record_id]链接到[tablename]+[record_id]的复合主键来关联记录。下图提供了一个示例: 这种设计结构叫什么(如果有的话),有没有更好/更标准的方法来实现这种功能?我不知道它叫什么;它看起来像是对EAV设计的修改。如果您使用的是关系数据库,最好遵循传统的规范化规则(为了

我正在创建一个主要将数据关联到数据的数据库,我不想限制哪些表记录可以关联到其他表记录(将在UI端处理)

我没有为每个多对多关系创建关联表,而是考虑创建一个“链接”表,该表使用由[tablename]+[record_id]链接到[tablename]+[record_id]的复合主键来关联记录。下图提供了一个示例:


这种设计结构叫什么(如果有的话),有没有更好/更标准的方法来实现这种功能?

我不知道它叫什么;它看起来像是对EAV设计的修改。如果您使用的是关系数据库,最好遵循传统的规范化规则(为了性能和有效性)。我查看了EAV,它类似于基本属性表,我想,这里要实现的更正确的解决方案是属性表,它只是为每个表定义了一组属性类型。这里唯一的区别是,您可以为每个关联子表使用复杂的表;传统数据库系统针对传统数据库规范化进行了优化。