问题标签 [relational-model]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
51 浏览

hardware - 完整设计基于关系模型的原型机

在 Ted Codd 的The Relational Model for Database Management, Version 2的序言中,他写道(第一段):

今天,如果你有一个设计良好的数据库管理系统,你就拥有了数据处理和决策支持王国的钥匙。 这就是为什么现在有一个原型机,其完整的设计是基于关系模型的。它的算术硬件只是架构中很小的一部分。事实上,旧术语“计算机系统”现在似乎用词不当。

有谁知道 Ted Codd 指的是什么原型机?我很想阅读描述这台机器的旧计算机科学/计算机工程论文。

0 投票
1 回答
88 浏览

database-design - 概念到关系映射

这是一个家庭作业问题。我已经有了自己的答案,但我不确定它是否正确,需要你们的建议。这是概念图:

这是我的关系模式:

Employer(EmployerID, name) -> 主键是 EmployerID

雇员(EmpID, name) -> 主键是 EmpID

我认为雇主和雇员实体应该是正确的,作为它的正常类。但是我不确定正在运行的项目和项目实体,即关联类和依赖类。这是我的答案:

运行项目(EmpID、Year、Duration、ProjectID、ProjectName)-> 所有主键

Project(ProjectID, ProjectName) -> 所有主键

0 投票
3 回答
9902 浏览

uml - 如何从 UML 类模型生成关系模型?

有谁知道允许自动从 UML 类模型映射到数据库关系模型的应用程序(企业架构师,...)?如何?

谢谢

0 投票
2 回答
582 浏览

hibernate - 使用@Version 列不允许@ManyToOne 关系属性作为参考

我正在使用休眠 3.6.3.Final。我有两个关系实体 A 和 B,其单向 ManyToOne 定义为:

现在假设我在 db 中已经有一个 pk id = 1 的 B 实例,然后执行以下操作:

引发著名的“TransientObjectException:对象引用了未保存的瞬态...”异常。令人惊讶的是,如果@Version @Column 被删除或设为@Transient,上面的代码将完全正常工作。知道为什么我要观察这种行为吗?

0 投票
2 回答
149 浏览

schema - 关系数据库理论和键

我正在设计一个模式来在基于浏览器的游戏中保存玩家数据。

我有三个关系。其中两个至少有两个候选键,但是第三个只有三个属性:{playerId, message, date}

由于存在 1..1:0..* 关系,因此该关系不会包含唯一的行,这意味着每个玩家可以有任意数量的新闻元组。无论如何,我不需要能够唯一地识别任何元组,并且没有一个属性实际上可以成为候选者。

我的问题是:我了解关系模型指出不能有重复的元组,并且每个关系都必须有一个键。我上面的模式与这两个约束相矛盾,但适用于我的目的。我知道我可以简单地添加一个唯一的索引属性(如 ID),但这似乎没有必要。我错过了什么吗?

谢谢你的时间。

0 投票
2 回答
206 浏览

sql - 是否有任何不依赖 SQL 的 DBMS?

这个话题与这个问题有些相关。在那里,我的答案是假设 SQL 是访问我所知道的每个数据库中的数据所必需的。

AFAIK,无论您是使用某些 dbms 客户端直接访问数据,还是使用某些 db 连接器使用某些程序(c++、java、cobol 等)执行逐行操作(即游标),您都需要在某些时候, 编写一些 SQL 来实际读取/修改数据。

现在我要问:这是真的?是否有任何不依赖某些 SQL 方言的 RDBMS?

我知道 SQL 是(不严格)基于关系代数的,它是 EFCodd (1970) 的关系模型的基础。

所以我还要问的是:是否有任何 RDBMS 可以更好地实现关系模型?

0 投票
1 回答
76 浏览

database - 有意义的元组

我有一个称为人员的关系的表格表示,我被要求完成许多任务,例如度数和基数为 5 和 3,但有人问我为什么谈论第二个元组没有意义关系,我不知道为什么会这样。

*这是一个模拟考试,没有答案。 职员

0 投票
2 回答
60 浏览

database - 求解三进制创建数据库

我有这个表:电影、会话(在日期时间显示的电影)和用户。

用户可以在具体会话中预订电影。画它我有它:

我正在考虑创建这样的表:

电影(id,标题,分钟)会话(id,idMovie,日期时间)用户(id,名称)预订(idSesion,idUser,numTickets)

会好吗?或者我应该在我的预订表中加入 idMovie 吗?

谢谢。

0 投票
1 回答
142 浏览

database-design - 关系设计场景:限制子关系

请考虑以下情况。一个宠物主人可能有多只猫,也可能有多只狗。有些狗与同一个主人的一些猫有关系(即它们打架:-)) 。

以下关系设计没有施加此限制,因为不同所有者的猫和狗可能是相关的。有没有办法通过关系设计来施加这种限制?

在此处输入图像描述

0 投票
1 回答
371 浏览

postgresql - 具有用户提供的字符串列、外键的复合键

假设我有下表

  • subgroup_name对 a 是唯一的group(group_id)
  • 一个group可以有很多subgroups
  • subgroup_names用户提供。(我想避免使用subgroup_id列。subgroup_name在模型中具有意义并且不仅仅是一个标签,我提供了一个预先确定的名称列表,但允许用户添加自己的名称以提高灵活性)。
  • 该表有 2 级引用包含子组属性的子表(具有多对一关系);


我想在 (group_id, upper(trim(subgroup_name))) 上有一个主键;

据我所知,postgres 不允许在函数上使用 PRIMARY KEY/UNIQUE。IIRC,关系模型还要求将列用作存储。

CREATE UNIQUE INDEX ON subgroups (group_id, upper(trim(subgroup_name)));不能解决我的问题,因为我模型中的其他表将有指向这两列的 FOREIGN KEYs。


我看到两个选项。

选项 A)

  • 将清理后的子组名称存储在 subgroup_name 中
  • 添加一个名为 subgroup_name_raw 的额外列,其中包含未清理的字符串

选项 B)

  • 在我的密钥对上创建一个 UNIQUE INDEX 和 PRIMARY KEY。(似乎是一个巨大的浪费)

有什么见解吗?

注意:我使用的是 Postgres 9.2