数据库中的功能依赖性在属性之间强制执行一组约束。当关系中的一个属性唯一地确定另一个属性时,会发生这种情况。这可以写成A - > B这意味着“B在功能上取决于A”。这也被称为a数据库依赖项。
在这种关系中,A确定B的值,而B取决于A.
为什么功能依赖性在数据库设计中很重要
功能依赖性有助于确保数据的有效性。考虑列出包括社会安全号码(SSN),姓名,出生日期,地址等特征的表员工。
属性SSN将确定名称,出生日期,地址和其他值的值,因为社会安全号码是唯一的,而姓名,出生日期或地址可能不是。我们可以这样写作:
SSN - >姓名,出生日期,地址
因此,名称,出生日期和地址在功能上取决于SSN。但是,反向陈述(名称 - > SSN)不是真的,因为多个员工可以具有相同的名称,但永远不会具有相同的SSN。放另一个更具体的方式,如果我们知道SSN属性的值,我们可以找到名称,出生日期和地址的值。但如果我们相反,我们只知道只有名称属性的值,我们无法识别SSN。
功能依赖项的左侧可以包括多个属性。假设我们有多个地方的业务。我们可能有一个具有属性员工,标题,部门,地点和经理的表员工。
员工确定他工作的位置,所以有一个依赖性:
员工 - >位置
但位置可能有多个经理,因此员工和部门一起确定经理:
员工,部门 - >经理
功能依赖性和标准化
功能依赖性有助于所谓的数据库正常化,这确保了数据完整性并减少了数据冗余。没有归一化,没有保证数据库中的数据准确且可靠。
感谢您让我们知道!
告诉我们为什么!