基于关系数据库的数据库功能依赖性

发表于:2020-3-16 10:43  作者:佚名   来源:爱码农

字体: | 上一篇 | 下一篇 |我要投稿 | 推荐标签:

  我们今天生活的数字时代在许多方面都是一个过剩的时代。互联网的爆炸违背了所有人的期望,而且其持续的增长速度几乎是不可估量的。据《福布斯》报道,每天在互联网上创建2.5兆字节的数据,在过去两年中,全球90%以上的数据都是在生成的。坦率地说,这是很多数据。
  由于我们今天看到的数据量很高,海量数据之类的术语已经成为家喻户晓的事物。对于企业而言,数据是一项极为宝贵的资产。业务数据可以采用市场研究,客户历史和财务绩效的形式。无论要跟踪哪种数据,所有数据都存储在数据库中。
  如果数据是无价的资产,那么数据库就是我们用来存储,检索和分析数据,将字符和数字转化为可操作的信息的同等有价值的工具。IT组织出于各种目的而依赖这些数据库,这就是为什么管理这些系统对于现代组织的全面成功至关重要。用于处理数据库的系统称为DBMS。
  什么是DBMS?
  数据库管理系统(DBMS)是一组软件应用程序的创建,旨在定义,检索,操作和管理数据库中的数据。数据库管理员使用DBMS分析和修改数据库,以保持数据库的质量和优化。
  尽管对于当今的公司而言,数据已成为不可思议的宝贵资产,但可用的数据量巨大,使其成为复杂而昂贵的管理资源。随着公司规模的扩大,强大的DBMS对于现代企业与DBMS解决方案的竞争至关重要。组织的成功与管理数据的能力之间有着密切的关系。
  乍一看数据库似乎很简单,但是DBMS领域中发生的事情比您最初设想的要多得多。随着时间的流逝,已经有许多不同类型的数据库:
  面向对象的数据库通过创建包含数据和方法的对象,以类似于面向对象的编程概念的方式组织数据。
  层次结构数据库,将数据组织到父记录的树中,该父记录具有从中分支出来的相关子记录。
  网络数据库类似于分层数据库来组织数据,但是条目具有多个父记录的可能性增加了。
  关系数据库使用表通过在表中保存信息的条目名称来组织数据。
  由于关系数据库 的灵活性和强大功能,它们是现代组织最常用的数据库。
  关系数据库
  如前所述,关系数据库使用表来组织数据。但是,不是真正使关系数据库如此强大的表。表中的行可以链接到其他表中的行。这是数据库的关系部分发挥作用的地方。
  在表中,每一行都有一个唯一的“键”,用作该条目的标识符,并且这些键可以由数据库中其他表中的条目引用,从而在单独的条目之间建立关系。密钥的使用被称为功能依赖性。
  什么是功能依赖性?
  功能依赖关系(FD)在数据库中建立一个属性与另一个属性的关系。唯一键字段的使用是在数据库中实践功能依赖关系的主要方法之一。利用功能依赖性,即使条目中的其他数据点与单独的条目相同,也可以将其与正确的实体建立关联。
  功能相关性通常使用箭头→表示。例如,A→B表示A在功能上决定了B。一个很好的例子是考虑社会安全号码(SSN)。SSN是美国个人的唯一标识符,并用作识别可能容易在数据库中混淆的人的密钥。您可以说(SSN→出生日期),因为每个唯一的SSN都有一个与功能相关的出生日期。
  但是,相反的说法(出生日期→SSN)是不正确的,因为有许多人具有相同的出生日期,但是每个唯一的SSN仅存在一个人。这个概念对于关系数据库非常重要,它是使用DBMS管理和操纵它们的基础。
  DBMS示例中的功能依赖
  让我们看一个功能依赖的例子。名为“客户信息”的表可能包含一个由客户的名称和年龄组成的条目。由于可能会有多个具有相同姓名和年龄的人,因此需要为每个输入此表的新客户创建一个唯一密钥。虽然多个人可以具有相同的名称和年龄,但他们不能具有相同的密钥。
  现在,假设有一个名为“客户订单”的单独表,用于存储客户购买数据。每次进行购买时,“客户订单”表中都会有一个条目,并且该条目将使用“客户信息”表中创建的键在订单和下订单的客户之间建立关系。
  这种相互依赖关系确保即使有多个相同名称和年龄的客户,每个唯一客户都可以与其购买链接。此外,由于“客户订单”表中的每个条目都与“客户信息”键链接,因此可以将与单个客户关联的多个订单输入到该表中。
  由于现代组织可以使用大量数据,因此必须对数据库进行适当的管理,以确保充分利用资源并且不会浪费数据。database肿的数据库或维护不善的数据库可能是造成许多麻烦的根源。效率低下的数据库需要花费更长的时间进行分析和分类,不良的数据可能导致做出知情的决策。

      本文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理

评 论

论坛新帖

顶部 底部


建议使用IE 6.0以上浏览器,800×600以上分辨率,法律顾问:上海瀛东律师事务所 张楠律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2020, 沪ICP备05003035号
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪公网安备 31010102002173号

51Testing官方微信

51Testing官方微博

扫一扫 测试知识全知道