1.1 数据由DBMS统一管理和控制
DBMS提供的数据控制功能:
数据的安全性
数据的完整性
并发控制
数据库恢复
数据库管理系统是再操作系统支持下的系统软件
DML是数据库操纵语言
DCL是数据库控制语言
DDL是数据库定义语言
从用户角度看数据库管理系统,其功能包括了数据库维护,数据库定义,数据库控制
数据库管理系统是软件产品,而数据库系统不仅仅是软件产品。
DBS包含了DBMS和DB。
数据库系统的基本特点有:1. 数据共享性高,冗余度低。2. 数据独立性高。 3.数据结构化。
1.2 概念模型和数据模型
概念模型是信息建模,是对现实世界的符号化表述
信息世界的主要概念:
实体(entity): 客观存在的各类事物 如: 学生
属性(attribute):实体所具有的属性 如:学号
实体型(Entity Type):用实体名及其属性名集抽象实体 如:学生(学号,姓名,性别)
实体集(Entity Set):同型实体的集合 {小明,小红,小刘} (他们都是学生)
码(KEY):能唯一识别实体的属性集 如:学生的KEY就是学号
域(Domain):属性的取值范围 如: 姓名的域是{男,女}
关系(relationship):不同实体集中实体之间的联系
关系有 一对一,一对多, 多对多
多对多关系: 一个学生可以选修多门课,一门课可以被多个学生选修
一对多关系:一个货物只能够放到某一个仓库,一个仓库可以存放多种货物
一对一关系:一个人只能有一张身份证,一个身份证只能给一个人(这里把身份证看作是实体)
建立概念模型的方法:
使用E-R图(chen方法)
数据模型
数据模型是信息模型(概念模型)的数据化,从计算机角度出发,提供表示和组织数据的方法
数据模型里面现在最常用的是关系模型
关系模型:对关系结构的描述,定义如下
关系名(属性1,属性2,...,属性n)
例如:学生(学号,姓名,年龄,性别,系号,年级)
存储结构
实体和联系都作为存储文件来存储
实体型:直接用关系(表)来表示
属性:用属性名表示
一对一联系:隐含在实体对应的关系中
一对多:隐含在实体对应的关系中
多对多:直接用关系表示
概念模型到关系模型的转换
实体型的转换
联系的转换
1对1
1对多
多对多
数据操纵与完整性约束
数据操纵:增删改查(insert,delete,update,select)
1.3 数据库系统结构
数据库系统的三级模式结构
实例说明:
理解模式和外模式
在上图中,视图相当于就是外模式。
内模式,也成为存储模式,是数据物理结构和存储方式的描述。是数据在数据库内部的表示方式。
一个数据库只有一个内模式。
外模式/模式映像,定义外模式和模式之间的对应关系,每一个外模式都对应一个外模式/模式映像,映像通常包含在各自外模式的描述中。
外模式/模式映象的用途:保证了数据的逻辑独立性。why?当模式改变时,数据库管理员修改有关的外模式/模式映像,使外模式保持不变;应用程序是根据外模式编写的,因为外模式没有改变,所以应用程序不用修改,保证了数据与程序之间的逻辑独立性,简称为数据的逻辑独立性。
模式/内模式映象的用途:保证了数据的物理独立性。why?当数据库的存储结构改变了(例如选用了另外一种存储结构),数据库管理与修改模式/内模式映象,就可以使模式保持不变,应用程序不受影响。保证了数据与程序的物理独立性。
模式:描述数据库全体数据的全局逻辑结构和特征。
物理独立性是指:用户的应用程序与存储在磁盘上的数据库中的数据是独立的。
数据独立性是指:不会因为系统数据的存储结构与数据逻辑结构的变化而影响应用程序。
1.4 数据库系统的组成
总结
术语:
1.Data 2.DB 3.DBMS 4.DBS 5. 实体 6.属性 7.主码 8.外码 9.关系 10.关系模式 例如:学生(学号,姓名,性别,年龄) 11. 模式 12.外模式 13.内模式
原理:
1. 实体型间的联系: 1:1 ; 1:m ; m:n
2. E-R模型的建立: chen (画E-R图)
3. E-R模式 转化为 关系模型 1:1的怎么转,1:m的怎么转,m:n的怎么转
4. 模式/外模式映象, 内模式/模式映象的概念及其作用
5. 数据独立性和物理独立性