关系数据库:故事行代表的事物的正式词是什么?

时间:2017-09-07 08:28:05

标签: relational-database

我正在为sql存储过程编写一本手册,我希望尽可能准确,尽管我还没有接受过关系数据库理论方面的培训。我知道表代表实体。我需要知道记录/行代表什么。我想这将是实体的东西:也许是实体对象?实体实例化?

我正在重新陈述我的问题:我的数据库中有一个名为customer的表。我需要将行插入另一个数据库,该数据库也有一个类似的命名表。但是,我的数据库每个客户有一行;如果我改变了一行,我会做一个sql更新。如果我将更改内容更改为其他数据库,我不应该进行更新,而是要创建一个完整的新行,并且有一个名为status的特殊字段,其值应为"更改"在那种情况下。

...而我的整个问题是尝试在正式规范中描述这一点。所以直到现在我的尝试是:"对于我们数据库的每个实体实例化(???)对应于另一个数据库的一组记录,每个记录实际上代表一个插入/更新命令,而不是实体本身&# 34;

1 个答案:

答案 0 :(得分:0)

表示哪些表或行取决于您的数据建模规程。

在谈论实体的表示时,有必要区分实体的身份和扩展。朴素数据模型倾向于关注实体作为主要的范围,而逻辑模型仅仅识别彼此相关的实体。在这两种情况下,我们都可以说实体正在被代表。不同之处在于逻辑模型组织知识关于实体,而天真数据模型试图捕获实体本身。

在关系数据库模型中,表表示关系/谓词,行表示命题 - 每行中的值满足表的谓词语句中的角色/占位符以生成真实的语句。实体对应于值,实体集对应于域。

在实体关系模型中,表格表示实体关系或关系关系。实体集由其主键表示,关系集由复合键表示。行表示实体或关系的属性值。

在网络数据模型中,表表示实体集,行表示单个实体。行之间的引用表示关系。这似乎是你来自的模式。然而,这种方法是这三种中最古老和最天真的方法,并且经常需要创建人工实体来克服它表示复杂关系的有限能力,使数据模型的本体解释变得困难。

如果你需要编写正式的规范,我建议你研究数据的关系模型,这是三者中最具表现力的,相当于一阶谓词逻辑的权力。看看object-role modeling和Lex de Haan以及Toon Koppelaar的数据库专业人员应用数学等书籍。比尔肯特的数据和现实也提供了很多洞察现实世界建模的难度。