database-design相关内容

数据库:关于两种可能性的设计要点是什么?

我正在为一个新项目设计一个数据模型. 其中一项要求指定某些对象可以指向个人或公司. 实现这一目标的最明智方法是什么? 我想过像这样的表格链接“演员"(用优秀的 yUML.me 顺便说一句): actor表中,根据actor_type,person_id或company_id是其对应的外键表或为 NULL.这样,当 one_table 想要检索有关 actor 的详细信息时, ..
发布时间:2022-01-20 13:02:12 数据库

三级数据库——外键

我有一个具有以下结构的三级数据库(简化为仅显示主键): 表 A:a_id表 B:a_id、b_id表 C:a_id、b_id、c_id 所以表 C 的可能值是这样的: a_id b_id c_id1 1 11 1 21 1 31 2 11 2 22 1 12 2 12 2 2... 我现在不确定应该如何设置外键;或者是否应该为主键设置它们.我的想法是在表 B B.a_id -> 上有一个外 ..
发布时间:2022-01-20 13:01:50 其他开发

我应该创建一个可以为空的外键还是创建一个新表?

我有一个关于如何设计数据库的小问题.我有一个动物收容所的餐桌狗,我有一个餐桌主人.所有曾经和曾经在收容所里的狗都被放在餐桌上.现在我想建立餐桌狗和餐桌主人之间的关系. 问题是,在这个例子中,并不是所有的狗都有一个主人,而且由于一个主人可以有多个狗,所以应该在表 dogs 中放置一个可能的外键(一只狗不能有多个主人,至少不在庇护所的管理中).但是如果我这样做,一些狗(收容所里的狗)将 null ..

表间关系设计建议

我有关于音乐专辑的信息,我想在 RDBMS 表中组织它们之间的关系.我有每张专辑的以下信息:艺术家、专辑名称、年份、标签、流派、风格、评级.到目前为止,我想制作 4 个表格 - 艺术家、专辑(名称、年份、标签、评级)、流派 1 和流派 2(每种流派都有其风格).上图如下: 但还不知道如何在相册和其他三个表之间建立连接?即,当我将运行查询从艺术家中选择名称时,我希望收到一张带有相应艺术家和流派 ..

数据库设计 - ERD.建模问题

希望有人能够快速建议我建模 ERD 的最佳方法(我使用的是 IDEF1X 和 ERWin,而不是 Chen 表示法),尽管这并不重要. 基本上我有三个实体 组织 人 受托人 业务规则规定受托人可以是个人或组织. 我的问题是,与 Trustee 有两个主要的外键关系是否正确.一个来自组织 > 受托人,第二个来自个人 > 受托人.受托人的 FK 字段之一将始终为 NULL, ..

mySQL中的外键和NULL

我可以在我的 values 表(值)中有一个列作为 knownValues 表的外键引用,并在需要时让它为 NULL,如示例中所示: 表格:值 产品类型值 freevalue0 1 空 1001 2 空 253 3 1 空 表格:类型 id 名称前缀0 长度厘米1 重量公斤2 水果 NULL 表:已知值 id 类型名称0 2 香蕉 注意:表中的类型 values &known ..
发布时间:2022-01-20 12:44:03 数据库

如何根据事件关联 3 个表

我有一张表格,其中包含关于不同类型的事件的信息,这些事件可以由两类人员完成公民和工人 所以对于他们每个人,我都有各自的表格 civil{civil_id, name, age,telephone...} 主键是civil_idworker{ worker_id, name, duty, department...} 主键是worker_id 那么事件表有一个所有可能事件的列表 even ..
发布时间:2022-01-20 12:43:49 其他开发

我应该使用外键吗?

可能重复: 外键有什么问题? 我使用带有大约 4 GB 数据的大型数据库的 MS Sql Server. 我在网上搜索为什么我应该使用外键.到目前为止,我只索引了用于连接表的键.性能很好,数据完整性没问题. 我应该使用外键吗?使用外键会获得更高的性能吗? 解决方案 外键实际上并没有提高性能,实际上它们会在所有写入操作上产生很小的性能损失,以确保遵循约束. 您要使用 ..
发布时间:2022-01-20 12:42:49 数据库

单个列上的 FK 引用复合 PK 中的列

无法创建/查找逻辑以在子表中引用父表的复合 PK 中的列的列上应用 FK. 创建表product(prod_id number,prod_name varchar2(20),价格编号,约束 PK12 主键(prod_id,prod_name)); 表已创建. create table purchase(prod_id number,购买价格编号,约束 FK12 外键(prod_id)引用产品 ..
发布时间:2022-01-20 12:36:32 数据库

RDBMS 数据库中的多对多关系

在像 mySQL 这样的 RDBMS 数据库中处理多对多关系的最佳方法是什么? 已尝试使用数据透视表来跟踪关系,但它会导致以下任一情况: 规范化被抛在后面 为空或 null 的列 您采取了哪些方法来支持多对多关系? 解决方案 在专门针对该关系的表(有时称为联结表)中跟踪多对多关系).此表将关系建模为两个指向相反方向的一对多关系. CREATE TABLE 客户(c ..
发布时间:2022-01-20 12:33:36 其他开发

外键——它们对我有什么作用?

我正在构建一个小型应用程序并设置表之间的外键关系.但是我很困惑为什么我真的需要这个?有什么优势 - 在编写我不必执行任何联接的查询时它是否对我有帮助?这是我的数据库的示例片段: +-------------------+|用户 |+-------------------+|用户 ID ||用户名 ||创建日期 |+-------------------++-------------------+ ..
发布时间:2022-01-20 12:33:01 数据库

如何在“菱形"中保持外键关系一致关系系统

考虑这种情况:汽车是从销售人员处购买的.一名销售人员在陈列室(并且仅在一个陈列室)工作.陈列室隶属于制造商,仅销售该制造商制造的汽车.同时,汽车是特定的Model,而Model是由制造商制造的. 限制 R:汽车模型的制造商必须与汽车销售员的陈列室的附属制造商是同一制造商. 该图显示了明显的外键关系. ---->制造商 您如何执行限制 R?您可以添加外键关系 Car -->制造商 ..