database - 使用阿姆斯特朗公理计算规范覆盖

标签 database database-design database-schema relation canonical-form

问题:使用阿姆斯特朗公理确定规范覆盖。给出您用于到达每个步骤的公理。

R = (A, B, C, D, E, F) Fdependencies = {A -> B, A -> C, CD -> E, CD -> F, B -> E}

我知道阿姆斯特朗的公理:联合、分解、伪传递性、自反性、增广和传递性。我也知道什么是规范封面。但是,我不知道如何使用阿姆斯特朗公理来得出这个特定问题的答案——我认为您通常会使用阿姆斯特朗公理来计算 F+,而不是 cc。 感谢您的帮助。

最佳答案

当我用谷歌搜索“canonical cover”时出现的最佳答案:

http://www.koffeinhaltig.com/fds/ueberdeckung.php

计算 F+ 本身通常不是很有趣。计算一些可证明等价的最小集合可能会更有趣一些,尽管我对此表示怀疑。

请注意(不是您的实际问题,但我还是会提到)虽然您的问题是关于“最小化 FD 两侧的属性集”,但阿姆斯特朗公理最有用的用途是计算具有左边是最小属性集,右边是最大属性集(=所有属性)。这为您提供了所有(最小) key ,从而为您提供了一种检查 NF 的简单方法。

关于database - 使用阿姆斯特朗公理计算规范覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5697355/

相关文章:

python - django: select_related() 在一个已经存在的对象上?

mysql - 数据库acl登录设计

sql - 在具有相似属性的不同数据库模式之间进行转换

SQL - 纬度/经度距离查询 - 如果距离 = 0,则不返回任何内容

c# - Dotconnect for PostgreSQL 未显示在数据源中

java - 如何将表格从 Derby 数据库复制到 Swing 应用程序小程序中?

api - REST API/数据模型设计 - 用户、帐户或两种模型?

sql - 这种订单情况应该如何设置数据库表

database - 什么是 OLTP 和 OLAP。它们之间有什么区别?

MYSQL键列不存在