真的需要关系表吗?

Thi*_* it 6 sql database

关系表主要包含两列:IDTABLE1IDTABLE2.

只有关系表之间似乎有变化的是这两列的名称和表名.

它会更好,如果我们创建一个表Relationships,并在该表中,我们将3列:
TABLE_NAME,IDTABLE1,IDTABLE2,然后用这个表的所有关系?

这是Web /桌面应用程序开发中的一个好/可接受的解决方案吗?这有什么不利之处?

注意:
谢谢大家的反馈.我很感激.
但是,我认为你有点太过分了......每个解决方案都有效,直到有一点.
由于数据存储简单的文本文件在某一点上是好的,所以比MS Access更好,比SQL Server,比... ...
说实话,我还没有看到任何论据说明为什么这个解决方案对小项目不利(DB大小为几GB).

ale*_*lex 13

这将是一个桌子的怪物; 这也很麻烦.在性能方面,这样的表不是一个好主意.而且,外键不可能添加到这样的表中.我真的看不出这样的解决方案有很多好处.


Mar*_*ith 8

馊主意.

如果IDTABLE1可以id从任何表中包含s,您将如何强制执行外键?

要在连接上实现可接受的性能而不加载不必要的IO来引入完全不相关的行,您需要一个带有前导列的复合索引,TABLE_NAME它基本上最终会将表分成多个部分.

显然,即使进行了这种伪分区,你仍然会在表/索引中浪费大量空间,只重复每行的表名.

  • 并且这种繁琐的方法没有真正的优势.+1 (2认同)