MySQL入门教程:关系型数据库系统
最新学讯:近期OCP认证正在报名中,因考试人员较多请尽快报名获取最近考试时间,报名费用请联系在线老师,甲骨文官方认证,报名从速!
我要咨询MySQL入门教程:关系型数据库系统,所谓关系数据库管理系统,即RDBMS,为了进一步了解一个RDBMS是由什么构成的,你必须先了解关系模型。
下列情况出现在一个关系模型中:
数据的基础项是关系。
在这些表上的操作只产生关系(关系型闭合)。
什么是关系?这是一个描述两个集合的元素如何相互联系或如何一一对应的数学概念。因此,关系模型是建立在数学基础上的。然而,对你来说,关系只是一个带有一些特殊属性的表,一个关系模型把数据组织到表中,而且仅在表中。客户、数据库设计者、数据库系统管理员和用户都以同样的方式—即从表中—查看数据。那么,表就是关系模型的近义词。
一个关系型表有一组命名的属性(attribute)或列,以及一组元组(tuple)或行。有时列被称为域,行被称为记录,列和行的交集通常被叫做单元。列标示位置,有作用域或数据类型,例如字符或整数。行自己就是数据。
一个关系表必须符合某些特定条件,才能成为关系模型的一部分:
1、贮存在单元中的数据必须是原子的。
每个单元只能存贮一条数据,这也叫信息原则(InformationPrinciple)。尽管在过去的数年中按某些违反这一条的方式已经建立了许多系统,但违反这一条将不能运用良好的设计原则。当一个单元包含多于一条的信息时,这叫做信息编码(informationcoding)。在这样的情况下,是否采用违背理论的方案是一个设计的选择问题,尽管在多数情况下,结果证明这对数据的完整性是一不利的。
2、贮存在列下的数据必须具有相同数据类型。
3、每行是唯一的(没有完全相同的行)。
4、列没有顺序。
5、行没有顺序。
6、列有一个唯一性的名称。
除了表和它们的属性,关系模型有它自己特殊的操作。不需要深入研究关系型数学,只需说明这些操作可能包括列的子集、行的子集、表的连接以及其他数学集合操作(如联合)等就足够了。真正要知道的事情是这些操作把表当作输入,而将产生的表作为输出。
SQL是当前RDBMS的ANSI标准语言,它包含这些关系型操作。允许数据操作或数据处理的主要语句是SELECT、INSERT、UPDATE和DELETE。因此,这些数据处理操作中任何一个都是一个事务。
允许数据定义或结构化处理的基本语句是CREATE、ALTER和DROP。关系模型要求的最后一件事是两个基础的完整性原则。它们是实体完整性原则(entityintegrityrule)和引用完整性原则(referentialintegrityrule)。首先,让我们看看两个定义:
1、主键(primarykey)是能唯一标识行的一列或一组列的集合。有时,多个列或多组列可以被当作主键。
2、由多个列构成的主键被称为连接键(concatenatedkey)、组合键(compoundkey),或者更常称为复合键(compositekey)。
数据库设计者决定哪些列的组合能够最准确和有效地反映业务情形,这并不意味着其他数据未被存贮,只是那一组列被选作主键而已。
剩余有可能被选为主键的列被叫做候选键(candidatekey)或替代键(alternatekey)。一个外键(foreignkey)是一个表中的一列或一组列,它们在其他表中作为主键而存在。一个表中的外键被认为是对另外一个表中主键的引用。实体完整性原则简洁地表明主键不能全部或部分地空缺或为空,引用完整性原则简洁地表明一个外键必须为空或者与它所引用的主键当前存在的值相一致。
一个RDBMS就是一个建立在前面这些关系模型基础上的,一般能满足所提到的全部要求的DBMS。但是,在70年代末到80年代初,RDBMS开始销售的时候,SQL超越了本质为非关系型的系统,受到普遍欢迎,并被称作关系型。