数据库系统是由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。
数据(data):描述事物的符号记录
数据库(database简称DB):是长期存储在计算机内、有组织、可共享的数据的集合。
数据库管理系统(DBMS):是位于用户与操作系统之间的一层数据管理软件。
数据库系统(DBS):是指计算机系统中引入数据库后的系统构成。
各种数据库的操作命令都是由数据库管理系统(DBMS)完成的。
DBMS对数据的控制功能:
1、数据的安全性保护:每个用户只能按照指定的方式使用和处理数据(如:用户的权限)
2、数据的完整性检查
3、并发控制:保证多个用户同时操作不会产生错误
4、数据库恢复:将数据库从错误状态恢复到某一已知的正确状态(相当于快照)
数据模型分类:
概念模型:也称信息模型,它是按照用户的观点对用户数据和信息建模。
数据模型:包括网状模型、层次模型、关系模型等,它是按照计算机系统的观点对数据建模
层次数据模型:只有一个节点没有双亲节点,这个节点为根节点,根以外的节点有且只有一个双亲节点。
网状数据模型:(满足)允许一个以上的节点无双亲,一个节点可以有多于一个的双亲节点
关系模型:在用户的观点下,关系模型中数据的逻辑结构是一章二维表,由行和列组成
三级模式是数据库对数据的三个抽象级别
模式(或逻辑模式):数据库中全体数据的逻辑结构和特征的描述
包括:数据的逻辑结构(数据项的名字、类型、取值范围等)、数据之间的联系、数据有关的安全性、完整性要求
模式是数据库系统模式的中间层,与数据的物理存储细节、硬件环境无关,与具体的应用程序、开发工具及高
级程序设计语言无关。介于内模式与外模式之间
一个数据库只有一个模式
外模式(子模式或用户模式):数据库用户的数据视图,用于数据库与应用之间的连接。
模式与外模式的关系是一对多,如同一个数据库可以有多个用户
外模式与应用的关系是一对多,如同多个应用可以使用一个用户账号连接数据库
用途:通过给用户设置权限提高安全性,每个用户只能看见有权限的数据,保证了数据的独立性
一个数据库可以有多个外模式
内模式(存储模式):是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式
如:
--记录的存储方式(顺序存储,按照B树方式存储,按照hash方法存储)
--索引的组织方式
--数据是否压缩存储
--数据是否加密
--数据存储记录结构的规定
一个数据库只有一个内模式
二级映像在DBMS内部实现三个抽象层次(三级模式)的转换关系
外模式/模式映像:定义外模式与模式之间的对应关系,每个外模式都对应一个外模式/模式映像 保证:数据的逻辑独立性
模式/内模式映像:定义数据全局逻辑结构与存储结构之间的对应关系 保证:数据的物理独立性
数据的逻辑独立性:当模式改变时,数据库管理员修改有关的外模式/模式映像,使外模式保持不变
数据的物理独立性:当数据库的存储结构改变了,数据库管理员修改模式/内模式映像,使模式保持不变
数据的独立性:不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序
候选码:表中可以唯一确定一个元组的某个属性(也就是列),如果这样的码有不止一个,那么大家都叫候选码,
主码:我们从候选码中挑一个出来做老大,它就叫主码。
外码:如果一个关系中的一个属性是另外一个关系中的主码则这个属性为外码
元组:是关系数据库中的基本概念,关系是一张表,表中的每行(即数据库中的每条记录)就是一个元组
属性:数据库中的列
实体完整性原则:若属性a是主属性(主键),则a不能为空
参照完整性原则:表的外键必须是另一个表的主键值,或者是空值
——————————————————————————————————————————————————————————————————————————————————
sql的各种操作(关系代数)
并运算
差操作
交叉操作
选择操作 where having where选择的是行,having选择的是组
投影操作 select
连接操作 from in = > <
除运算
广义笛卡尔积
——————————————————————————————————————————————————————————————————————————————————
数据库设计过程
1、需求分析阶段
2、概念结构设计阶段
3、逻辑结构设计阶段
4、数据库物理设计阶段
5、数据库实施阶段
6、数据库运行和维护阶段