数据库 – 规范化依赖关系

我只是想确保我正确地思考它

1)完全依赖性是指一个或多个主键确定另一个属性

2)部分依赖性是当其中一个主键确定另一个或多个属性时

3)传递依赖性是当nonkey属性确定另一个属性时

我在想它吗?

解决方法

这个答案直接来自我的CS课程,并从Connolly和Begg教科书中获得.

完整的功能依赖

识别候选键(这里是propertyNo,iDate和pAddress).这是因为这3个的任何组合都可以让你找到给定元组的其他属性(我可以找到那些在给出这三件事情的情况下进行检查的工作人员,我可以找到carReg工作人员没有使用给出这3件事等).但请注意,您需要所有这3个才能找到其他属性,而不仅仅是一个子集.完全依赖性总是与非候选键相关,取决于候选键,取决于全部或取决于一些.

部分依赖

给定这三个候选键,查看候选键.是否有候选键的任何子集依赖于另一个?是的,它是pAddress.给定propertyNo,您可以找出该属性的地址.然后看看候选键之外.是否有任何这些键仅依赖于候选键的一部分,而不是所有组件?在这种情况下没有.因此,部分依赖关系始终是候选键中的依赖关系或非候选键的依赖关系,而不是仅仅是候选键的部分而不是所有组件

传递依赖

现在,查看非候选键(staffNo,comments,iTime(检查时间),sName,carReg).在那些内部,是否有任何功能上依赖于另一个?是的,它是sName – 给定一个staffNo,你可以找出工作人员的名字.但是staffNo在功能上依赖于3个候选键.因此,通过传递性,propertyNo iDate pAddress – > staffNo – > sName,所以sName过渡依赖于staffNo.传递依赖性总是与候选键之外的属性相关.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...