问题标签 [candidate-key]

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 投票
1 回答
47 浏览

dependencies - 如何使用 FD.S 找到候选键?

大众->XYZ、Z->W、Y->大众

它是函数依赖关系 S{V,W,X,Y,Z}。候选键是'Y'??或其他??我有个问题。为什么 Z->W 打破正常形式?什么类型是破坏范式?

0 投票
1 回答
187 浏览

database - 功能依赖和候选键

假设我们在关系 R(A,B,C) 上定义了函数依赖 B->A, A->C。这里 B->AC(来自给定的功能依赖),那么 B 候选键是什么?

我在教科书中读到,如果特定属性能够唯一标识关系中的所有属性,那么它就有资格成为候选键。所以根据那个 B 应该是一个候选键。

但如果我有一张桌子。

BAC

1 3 2

1 3 2

在此表中 B->AC 所以 B 应该是候选键,但维基百科(https://en.wikipedia.org/wiki/Candidate_key)说它应该是唯一的。那么B是这个表中的候选键吗?

我很困惑。

0 投票
2 回答
773 浏览

database-design - 当候选键和复合键选项都可能时,在 RDBMS 表中创建主/唯一 ID 的最佳实践是什么?

场景
- 有两个部门,即“软件”和“硬件”。
- 他们在软件部门有“Cobol”、“Fortran”、“Pascal”、“QBasic”等部门。
- 以及硬件部门的“RAM”、“硬盘”、“监视器”、“CPU”。
- 以下是DepartmentDivision表格的表格格式。

使用的数据库:Oracle

表一:部门表

在此处输入图像描述

表2:以上部门的分表(格式1-主键/唯一ID列=Div_id)

在此处输入图像描述

表 2 :上述部门的分表(格式 2 - 主键/唯一 ID 列 = Div_id + Dep_id)

在此处输入图像描述

在上述两种划分表格式中,我无法找到优缺点。因此,在这些格式中,创建主要/唯一 ID 的最佳做法是什么。为什么它是最好的?

使用选择查询时,两种格式之间是否存在性能差异?

0 投票
1 回答
3848 浏览

database - How to find a candidate key

I have a relation A,B,C,D,E with functional dependencies

1) A->BC

2) CD->E

3) B->D

4) E->A

Using 1 gives A,D,E and then using 4 will make it D,E

Using 2 gives A,B,C,D and then using 3 gives A,B,C and using 1 gives A

Using 2 gives A,B,C,D and using 1 gives A,D

Using 4 gives B,C,D,E and using 2 gives B,C,D and using 3 gives B,C

Using 3 gives A,B,C,E and using 1 gives A,E and using 4 gives E

So I would have 5 super keys? (A, E, AD, BC, DE). And from my super keys I would pick the unique ones.

Since I can get A from E, I can remove A and AD(since DE is the same) and since I can get BC from A I can remove that so I am left with

E, DE

Would that be my super key? Or would it just be E?

0 投票
1 回答
1632 浏览

database - BCNF 规范化和多个候选键

在 BCNF Normalization 中,候选键是否可以确定非主键或其他候选键?

如果是,同一张表中是否可以存在多个候选键?还是只有一个?

0 投票
1 回答
391 浏览

sql - 寻找没有功能依赖的候选键的算法

给定一个包含数十列、数千行且列之间没有已知函数依赖关系的表,是否有任何算法可以自动为该表找​​到比这更快或更有效的候选键:

  1. 检查是否有任何单列是候选键
  2. 检查是否有任何 2 列是候选键

  3. 检查是否有 3 列是候选键

...等等直到找到一个密钥?

0 投票
1 回答
373 浏览

database - R = {A,B,C,D,E,F}中FD(功能依赖)的PK(主键)和CK(候选键)混淆

我对下面的问题感到困惑,因为根据我的说法,它的答案可能是 AD 是候选键。但它是主键,所以我想知道:它的候选键和它的主键一样吗?

关系 R={A,B,C,D,E,F} 给出了以下函数依赖集

A->B
AD->C
B->F
A->E

它的候选键是什么?它会和它的主键一样吗?

0 投票
2 回答
1929 浏览

database - 关系可以有不同长度的候选键吗?

我们可以在一个关系中拥有多个候选键。但是我们可以在长度不同的关系中有两个候选键吗?

假设我有一个关系 R(A,B,C,D,E),我们只有两组属性,它们唯一地标识关系中的一个元组:{A,B,C} 和 {D,E}。

那么我们可以说 {A,B,C} 和 {D,E} 都是候选键吗?

0 投票
1 回答
1414 浏览

database - 如何找到候选键?

例子:

令 R = (A, B, C, D) 令 F = {C -> AD, AB -> C}

那么我怎样才能找到候选键呢?

答案是 {AB, BC}

为什么?

0 投票
2 回答
990 浏览

key - 主键、候选键和超级键在功能依赖方面有什么区别

就功能依赖而言,主键候选键超键有什么区别?

我知道区别,但我不知道它们在功能依赖方面的区别。