1.1.4 关系数据库管理系统
关系数据库管理系统(Relational Database Management System,RDBMS)是指包括相互联系的逻辑组织和存取这些数据的一套程序(数据库管理系统软件)。关系数据库管理系统就是管理关系数据库,并将数据逻辑组织的系统。
常用的关系数据库管理系统产品是甲骨文(Oracle)公司的Oracle和MySQL、IBM的DB2、微软的SQL Server系列等。
关系数据库管理系统是在E.F.Codd博士发表的论文《大规模共享数据银行的关系型模型》基础上设计出来的。它通过数据、关系和对数据的约束三者组成的数据模型来存放和管理数据。三十多年来,RDBMS获得了长足的发展,目前许多企业的在线交易处理系统、内部财务系统、客户管理系统等大多采用了RDBMS。字节级关系型数据库在大型企业集团中已是司空见惯。因此可以说,关系数据库管理系统就是管理关系数据库,并将数据组织为相关的行和列的系统。
关系模型由关系数据结构、关系操作集合、关系完整性约束三部分组成。
实体关系模型(Entity-Relationship Model),简称E-R Model,是陈品山(Peter Chen)博士于1976年提出的一套数据库的设计工具,他运用真实世界中事物与关系的观念,来解释数据库中的抽象的数据架构。实体关系模型利用图形的方式(实体-关系图(Entity-Relationship Diagram))来表示数据库的概念设计,有助于设计过程中的构思及沟通讨论。
实体关系模型中的关系,存在3种一般性关系:一对一、一对多和多对多关系,它们用来描述实体集之间的关系:
1.一对一关系(1∶1)
对于两个实体集A和B,若A中的每一个值在B中至多有一个实体值与之对应,反之亦然,则称实体集A和B具有一对一的联系。
例如:一个中国人只能有一个身份证号码,而一个身份证号码只能对应唯一的一个人,则中国人与身份证号码之间具有一对一关系。
2.一对多联系(1∶N)
对于两个实体集A和B,若A中的每一个值在B中有多个实体值与之对应,反之,B中每一个实体值在A中至多有一个实体值与之对应,则称实体集A和B具有一对多的联系。
例如:某校教师与课程之间存在一对多的联系:“授课”,即每位教师可以教多门课程,但是每门课程只能由一位教师来教,则教师与课程之间具有一对多关系。
3.多对多联系(M∶N)
对于两个实体集A和B,若A中每一个实体值在B中有多个实体值与之对应,反之亦然,则称实体集A与实体集B具有多对多联系。
例如:表示学生与课程间的联系“选修”是多对多的,即一个学生可以学多门课程,而每门课程可以有多个学生来学,则学生与课程之间具有多对多关系。
关系模型就是指二维表格模型,因而一个关系型数据库就是由二维表及其之间的联系组成的一个数据组织。
表是以行和列的形式组织起来的数据的集合。一个数据库包括一个或多个表。例如,可能有一个有关作者信息的名为authors的表。每列都包含特定类型的信息,如作者的姓氏。每行都包含有关特定作者的所有信息,如姓名、住址等。在关系型数据库中,一个表就是一个关系,一个关系数据库可以包含多个表。