数据库的四个基本概念
数据
- 数据的定义:描述事物的符号记录
数据是数据库中存储的基本对象 - 数据的种类(并不是仅指数字):数字、文字、图形、音频、视频、学生的档案记录等
- 数据的含义称为数据的语义,数据与其语义是密不可分的
数据库(DB)
- 数据库的定义:数据库是长期存储在计算机内、有组织的、可共享的大量数据的集合。
数据库管理系统(DBMS)
- 数据库管理系统的定义:
(1)位于用户和操作系统之间的一层数据管理软件
(2)是基础软件,是一个大型复杂的软件系统 - 常用的数据库管理系统
SQL Server , Oracle , My SQL - 数据库管理系统的主要功能
(1)数据定义功能
(2)数据组织、存储和管理
(3)数据操纵功能
(4)数据库的事务管理和运行管理
(5)数据库的建立和维护功能
数据库系统(DBS)
- 数据库系统的构成:数据库、数据库管理系统(及其应用开发工具)、应用程序、数据库管理员
信息世界中的基本概念
实体
客观存在并可相互区别的事物称为实体。
实体型
用实体名及其属性名集合来抽象和刻画同类实体称为实体型。
实体集
同一类型实体的集合称为实体集。
联系
现实世界中的事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系。
关系模型的数据结构
关系
一个关系对应通常说的一张表。
元组
表中的一行即为一个元组。
属性
表中的一列即为一个属性,给每一个属性起一个名称即属性名
码
也称码键。表中的某个属性组,它可以唯一确定一个元组。
域
是一组具有相同数据类型的值得集合。属性的取值范围来自某个域。
分量
元组中的一个属性值。
关系模式
对关系的描述。
数据库系统的三级模式结构
- 数据库的三级模式结构有:模式、外模式、内模式
- 优点:数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMS管理,使用户能逻辑地、抽象地处理数据,而不必关心数据在计算机中的具体表示方式与存储方式。为了能够在内部实现这三个抽象层次的联系和转换,数据库管理系统在三级模式之间提供了两层映象:外模式/模式映象,模式/内模式映象。模式/内模式映象保证了数据与程序的物理独立性。外模式/模式映象保证了数据与程序的逻辑独立性。
- 模式的定义:
(1)数据的逻辑结构(数据项的名字、类型、取值范围等)
(2)数据之间的联系
(3)数据有关的安全性、完整性要求 - 外模型(也称子模式或用户模式)的定义:
(1)用户使用的局部数据的逻辑结构和特征的描述
(2)数据库用户的数据视图,是与某一应用有关的数据的逻辑表示 - 内模式(也称存储模式)的定义:
(1)是数据物理结构和存储方式的描述
(2)是数据在数据库内部的表示方式 - 数据定义语言
是SQL语言集中负责数据结构定义与数据库对象定义的语言,由CREATE、ALTER与DROP三个语法所组成,最早是由 Codasyl (Conference on Data Systems Languages) 数据模型开始,现在被纳入 SQL 指令中作为其中一个子集。目前大多数的DBMS都支持对数据库对象的DDL操作,部份数据库 (如 PostgreSQL) 可把DDL放在交易指令中,也就是它可以被撤回 (Rollback)。较新版本的DBMS会加入DDL专用的触发程序,让数据库管理员可以追踪来自DDL的修改。 - 数据操纵语言
数据操纵语言,用户通过它可以实现对数据库的基本操作。 - 数据与程序的物理独立性
(1)当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式/内模式映象,使模式保持不变。
(2)应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。 - 数据与程序的逻辑独立性
(1)当模式改变时,数据库管理员对外模式/模式映象作相应改变,使外模式保持不变 。
(2)应用程序是依据数据的外模式编写的,应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。 - 为什么数据库具有数据和程序的独立性
因为有了数据库,应用程序对数据的访问是要通过DBMS进行的,程序不能直接操作数据本身。而且DBMS提供了两层映像机制:外模式/模式映像和模式/内模式映像。这两层映像机制保证了数据库系统中数据的逻辑独立性和物理独立性。