C语言之数据库原理
– 数据语言的使用
• 交互式命令语言 • 宿主型语言
– 常见的DBMS
• ORACLE、Sybase的PowerBuilder、IBM的DB2、微软的SQL Server • 微软的Visual FoxPro、Access,功能简单
7
4.1.1 数据、数据库、数据库管理系 统(续)
• 4.数据库管理员
34
4.3 关系代数
• 3.专门的关系运算 .
– (1)选择(Selection)
• 在关系中选择满足某些条件的元组,即消去某些行, 可表示为:
σ F ( R) = {t | t ∈ R and F (t ) =' 真'}
– (2)投影(Projection)
• 在关系中选择某些属性列,即消去某些列,可表示 为: π Ai1 , Ai 2 ,L, Aik ( R ) = {t[ Ai1 , Ai 2 , L , Aik ] | t ∈ R}
R ∞ S = {t r t s | t r ∈ R and t s ∈ S and t r [ A]θ t s [ B ]}
A θB
– 其含义是,从关系R和S的广义笛卡尔积R×S中选取R关系在A属性 组上的值与S关系在B属性组上的值满足比较关系θ的元组。 – 1)等值连接:当连接条件中的比较运算符θ为“=” 。可表示为:
R ∞ S = {t r t s | t r ∈ R and t s ∈ S and t r [ A] = t s [ B]}
A= B
– 2)自然连接:要求连接时两个关系中进行相等比较的分量必须是 相同属性组,且在结果中将相同的属性列去掉。即若关系R和S具 有相同属性组B,则自然连接可记作:
•
19
4.2.2 E-R模型
• 1.基本概念
– 实体 – 属性 – 联系
• 一对一(1:1) • 一对多(1:M或M:1) • 多对多(M:N)
• 2.三个基本概念之间的联接关系
– 实体集与属性间的联接关系 – 实体与联系
20
4.2.2 E-R模型
– 3.E-R型的图示法
• • • • • 实体集:用矩形表示 属性:用椭圆形表示 联系:用菱形表示 实体集与属性间的联接关系:用无向线段表示 实体集与联系间的联接关系:用无向线段表示
22
4.2.4 网状模型
• 一个不加任何条件限制 的无向图 • 优于层次模型 • 使用时设计系统内部的 物理因素较多,用户操 作不方便,其数据模式 与系统实现不甚理想
23
4.2.5 关系模型
表框架•
1.关系的数据结构 属性
学号 2005410 2 2005410 3 2006930 1 2006930 2 姓名 张洁然 李一明 王文燕 刘宏 性别 出生年月 07-07-87 男 男 女 男 05-01-86 11-06-88 10-17-87 籍贯 上海 安徽合 肥 山东青 岛 江苏南 京
25
4.2.5 关系模型
• 关系的性质
– 元组个数有限性 – 元组的惟一性 – 元组的次序无关性 – 元组分量的原子性 – 属性名惟一性 – 属性的次序无关性 – 分量值域的同一性
26
4.2.5 关系模型
• 2.关系操纵
– 数据查询 – 数据删除 – 数据插入 – 数据修改
27
4.2.5 关系模型
• • • • • • 数据模式定义 数据存取的物理构建 数据操纵。 数据的完整性、安全性定义与检查 数据库的并发控制与故障恢复 数据的服务
6
4.1.1 数据、数据库、数据库管理系 统(续)
• 3.数据库管理系统
– 数据库语言
• 数据定义语言DDL • 数据操纵语言DML • 数据控制语言DCL DCL
• • • • • 数据库(数据) 数据库管理系统(软件) 数据库管理员(人员) 硬件平台:计算机和网络 软件平台:操作系统、数据库系统开发工具、接口软件
9
4.1.1 数据、数据库、数据库管理 系统(续)
• 6.数据库应用系统
– 数据库应用系统——Database Application System, 简称DBAS – 组成:数据库系统+应用软件+应用界面
二级公共基础知识
第4章 数据库设计基础 章
1
内容提要
• 数据库的基本概念:数据库,数据库管理 系统,数据库系统。 • 数据模型,实体联系模型及E-R图,从E-R图 导出关系数据模型。 • 关系代数运算,包括集合运算及选择、投 影、连接运算。 • 数据库设计方法和步骤:需求分析、概念 设计、逻辑设计和物理设计的相关策略。
• 3.数据完整性约束
– 实体完整性约束
• 主键中属性值不能为空值
– 参照完整性约束
• 实体及实体间的联系
– 用户定义的完整性约束
• 具体应用要求来定义的约束条件
28
4.3 关系代数
29
4.3 关系代数
• 1.关系模型的基本操作
– 四种基本操作
• 插入、删除、修改和查询
– 进一步分解成六种基本操作
• (4)广义笛卡尔积
– 设关系R和S的属性个数分别为n、m,则R和S的广义笛 卡尔积是一个有(n+m)列的元组的集合。每个元组的 前n列来自R的一个元组,后m列来自S的一个元组,记 为R×S。
R × S = {t r t s | t r ∈ R and
t s ∈ S}
33
4.3 关系代数
• 例:有两个关系R和S,分别进行并、差、交和广义笛卡尔积运算。
应用 A 应用 B 应用 C 应用 D 应用 E 外模式 1 外模式 2 外模式 3 外模式/逻辑模式映象 逻辑模式 内模式/逻辑模式映象 内模式
• 二级映射
– 概念级到内部级的映 射 – 外部级到概念级的映 射
DB
15
4.1.4 数据库系统的内部结构体系
• l.数据库系统的三级模式
– 概念级模式
– 外部级摸式
16
4.1.4 数据库系统的内部结构体系
• 2.数据库系统的两级映射
– 概念模式/内模式的映射
• 存在于概念级和内部级之间 高的物理独立性
– 外模式/概念模式的映射:
• 存在于外部级和概念级之间 • 实现了外模式到概念模式之间的相互转换 • 保证数据具有较高的逻辑独立性
31
4.3 关系代数
• (1)并(Union)
– 关系R和S具有相同的关系模式,R和S的并是由 属于R或属于S的元组构成的集合。可表示为:
R U S = {t | t ∈ R or t ∈ S}
• (2)差(Difference)
– 关系R和S具有相同的关系模式,R和S的差是由 属于R但不属于S的元组构成的集合。可表示为:
10
4.1.2 数据库系统的发展
• 人工管理阶段
用户 1 应用程序 1 应用程序 2 应用程序 3 用户 3 应用程序 4
… … … … …
数据组 1
用户 2
数据组 2 数据组 3 数据组 4
用户 m
应用程序 n
数据组 n
11
4.1.2 数据库系统的发展
• 文件系统阶段
12
4.1.2 数据库系统的发展
• 数据库中全体数据逻辑结构和特征的描述,是所有用户的公共数据视图 • 一个数据库只有一个概念模式
– 内部级模式
• • • • • • • • 又称物理模式 数据库物理存储结构与物理存取方法 对一般用户是透明的,直接影响数据库的性能 一个数据库只有一个内模式。 也称子模式或用户模式 数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述 用户的数据视图 一个数据库可以有多个外模式
R − S = {t | t ∈ R and t ∉ S}
32
4.3 关系代数
• (3)交(Intersection)
– 关系R和S具有相同的关系模式,R和S的交是由属于R且 属于S的元组构成的集合。可表示为:
R I S = {t | t ∈ R and t ∈ S} = R − ( R − S )
– 数据库管理员——Database Administrator,简 称DBA – 对数据库的规划、设计、维护、监视等的人员 – 其主要工作有:
• 数据库设计 • 数据库维护 • 改善系统性能,提高系统效率
8
4.1.1 数据、数据库、数据库管理系 统(续)
• 5.数据库系统
– 数据库系统——Database System,简称DBS – 拥有数据库技术支持的计算机系统 – 实现有组织地、动态地存储大量相关数据,提供数据 处理和资源共享服务 – 组成:
2
4.1 数据库系统的基本概念
3
4.1.1 数据、数据库、数据库管理系 统(续)
• 1.数据
– 数据
• 描述事物的符号记录,用物理符号记录下来的可以鉴别的信息 • 物理符号:数字、文字、图形、图像声音及其他特殊符号。 • 多种表现形式:数字化
– 计算机中数据分为两部分:
• 临时性数据 • 持久性数据
• • • • 较小的冗余度 较高的数据独立性 易扩展性 为多个用户所共享
5
4.1.1 数据、数据库、数据库管理系 统(续)
• 3.数据库管理系统
– 数据库管理系统——Database Management System,简称DBMS – 数据库的管理机构,职能是有效地组织、存储、获取和管理数据, 接受及完成用户提出的访问数据的各种请求 – 数据库系统的核心 – DBMS的功能
35
4.3 关系代数
• 例:在学生关系中
– 查询1980年以后出生的学生名单,表达式为:
σ 出生年份≥1980 (学生)
– 查询所有学生的“姓名”、“性别”,表达式 π (学生) 为: