数据库的基本概念

来源:互联网 发布:郝斌c语言180视频教程 编辑:程序博客网 时间:2024/06/05 06:35

 

1.  数据库

数据库(DB)是存放数据的仓库,只不过这些数据存在一定的关联,并按一定的格式存放在计算机上。从广义上讲,数据不仅包含数字,还包括了文本、图像、音频、视频等。

例如,把学校的学生、课程、学生成绩等数据有序地组织并存放在计算机内,就可以构成一个数据库。因此,数据库由一些持久的相互关联数据的集合组成,并以一定的组织形式存放在计算机的存储介质中。

2.  数据库管理系统

数据库管理系统(DBMS)是管理数据库的系统,它按一定的数据模型组织数据。DBMS应提供如下功能:

1)数据定义功能可定义数据库中的数据对象。

2)数据操纵功能可对数据库表进行基本操作,如插入、删除、修改、查询。

3)数据的完整性检查功能保证用户输入的数据应满足相应的约束条件。

4)数据库的安全保护功能保证只有赋予权限的用户才能访问数据库中的数据。

5)数据库的并发控制功能使多个应用程序可在同一时刻并发地访问数据库的数据。

6)数据库系统的故障恢复功能使数据库运行出现故障时进行数据库恢复,以保证数据库可靠运行。

7)在网络环境下访问数据库的功能。

8)方便、有效地存取数据库信息的接口和工具。编程人员通过程序开发工具与数据库的接口编写数据库应用程序。数据库管理员(DBADataBase Adminitrator)通过提供的工具对数据库进行管理。

数据、数据库、数据库管理系统与操作数据库的应用程序,加上支撑它们的硬件平台、软件平台和与数据库有关的人员一起构成了一个完整的数据库系统。图1.1描述了数据库系统的构成。

关系型数据库管理系统(RDBMS):

SQL Server

Oracle

MySQL

DB2

SyBase

数据库管理系统根据数据模型对数据进行存储和管理,数据库管理系统采用的数据模型主要有层次模型、网状模型和关系模型。

 层次模型

 网状模型

每一个数据用一个节点表示,每个节点与其他节点都有联系,这样数据库中的所有数据节点就构成了一个复杂的网络。图1.3为按网状模型组织的数据示例。

 

 关系模型

以二维表格(关系表)的形式组织数据库中的数据。例如,学生成绩管理系统涉及的学生、课程和成绩三个表。学生表涉及的主要信息有学号、姓名、专业名、性别、出生日期、总学分和备注;课程表涉及的主要信息有课程号、课程名、类别、开课学期、学时和学分;成绩表涉及的主要信息有学号、课程号和成绩。附录AA.4、表A.5和表A.6描述了学生成绩管理系统中学生、课程和成绩三个表的部分数据。

表格中的一行称为一个记录,一列称为一个字段,每列的标题称为字段名。如果给每个关系表取一个名字,则有n个字段的关系表的结构可表示为:关系表名(字段名1,字段名n),通常把关系表的结构称为关系模式。

在关系表中,如果一个字段或几个字段组合的值可唯一标志其对应记录,则称该字段或字段组合为

有时一个表可能有多个码,对于每一个关系表通常可指定一个码为“主码”,在关系模式中,一般用下横线标出主码。

概念结构设计---建立实体-关系模型(Entity-RelationshipE-R

E-R模型直接从现实世界中抽象出实体类型和实体间联系,然后用实体联系图(E-R)表示数据模型,是描述概念世界,建立概念模型的实用工具。

实体:客观存在并可以相互区分的事物叫实体。从具体的人、物、事件到抽象的状态、概念,都可以用实体抽象地表示。用矩形表示,矩形框内写明实体名。

实体集:是共享公共性质的事物的集合。

属性:每个实体集涉及的信息项称为属性,即是实体集的一种性质。用椭圆形表示,并用无向边将其相应的实体连接起来。

实体集中的实体彼此是可区别的,如果实体集中的属性或最小属性组合的值能唯一标志其对应实体,则将该属性或属性组合称为码。对于每一个实体集,可指定一个码为主码。

两个实体集AB之间的联系可能是以下三种情况之一。

一对一的联系(1:1):A中的一个实体最多与B中的一个实体相联系,B中的一个实体也最多与A中的一个实体相联系。

两个实体集AB之间的联系可能是以下三种情况之一。

一对一的联系(1:1):A中的一个实体最多与B中的一个实体相联系,B中的一个实体也最多与A中的一个实体相联系。

多对多的联系(m:n)A中的一个实体可以与B中的多个实体相联系,而B中的一个实体也可与A中的多个实体相联系。

实体:每个实体映射为一个表格。

属性:映射为相应表中的一个字段。