gpt4 book ai didi

database - 具有相同属性但不同关系的表是不好的做法吗?

转载 作者:搜寻专家 更新时间:2023-10-30 23:00:51 24 4
gpt4 key购买 nike

拥有两个具有相同属性但具有不同含义和关系的表是不是很糟糕?

table1 的属性 = table2 的属性。

但是 table1table3 有关系和table2table4 有关系。

这被认为是不好的做法吗?还是应该将table1table2整理成一张表?

虽然如果整理成一张表,那table1不也和table4有关系吗?

最佳答案

拥有相同属性的表是可以的。只需找到足够的含义/谓词来记录您的应用程序状态即可。

A base table has a "meaning" or "predicate (expression)" that is a fill-in-the-(named-)blanks statement given by the DBA. The names of the blanks of the statement are the columns of the table. Rows that fill in the blanks to make a true proposition about the world go in the table. Rows that fill in the blanks to make a false proposition about the world are left out. Ie a table holds the rows that satisfy its statement. You cannot set a base table to a certain value without knowing its statement, observing the world and putting the appropriate rows into the table. You cannot know about the world from base tables except by knowing its statement and taking present-row propositions to be true and absent-row propositions to be false. Ie you need its statement to use the database.

并根据需要声明关系/FK。ER 中的 R 代表关系,意思是关联(在实体)。然而,许多自称“ER”的方法和产品使用“关系”作为外键 (FK)。从一个关联集/表中的某些角色/列到另一个关联集/表中的某些角色/列的 FK 仅意味着源中这些角色/列的每个实体/子行必须作为键出现在目标的相应角色/列中。如果是这样,请声明关系/FK。

A constraint expression just corresponds to a proposition aka always-true statement about the world and simultaneusly to one about base tables.

(来自 this answer. 参见 this answer 属性/标题,this one 谓词和 this one 关系/外键/链接。)

关于database - 具有相同属性但不同关系的表是不好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33066601/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com