篇章一 数据库系统概念
第一章 数据库系统概述
1.1.1 信息、数据、数据处理和数据管理
1.信息:是人脑对现实世界事物的存在方式、运动状态及事物之间联系的抽象反映。客观存在。
信息是可储存、加工、传递和再生的。
2.数据:是用来记录信息的可识别的符号组合,是信息的具体表现形式。
①数据和语义是不可分割的。
②数据包括数字、文字、图形、图像、声音和视频等。
③数据是信息的符号表示,信息对数据的语义解释。
④信息=数据+语义
3.数据处理:数据→信息
数据管理是与数据处理相关必不可少的环节
1.1.2 数据库技术的发展
1.人工管理阶段
特点:①数据没有专门的存取设备
②数据没有专门的管理软件
③数据不共享
④数据不具独立性
2.文件系统阶段
硬件:有了磁盘、磁鼓等数据存取设备;软件:出现了高级语言和操作系统,操作系统中有了专门管理数据的软件(文件系统
特点:①数据以文件形式长期保存
②由文件系统管理数据
③应用程序与数据之间有一定的独立性
④文件的形式已经多样化
⑤数据具有一定的共享性
缺点:①数据共享性差、冗余度大
②数据不一致性
③数据独立性差
④数据间的联系弱
3.数据库系统阶段
出现了统一管理数据的专门软件系统,数据库管理系统DBMS
数据库系统阶段数据管理的特点
①结构化的数据及其联系的合集
②数据共享性高、冗余度低
③数据独立性高
在数据库系统中,整个数据库的结构可分为三级:用户逻辑结构、数据库逻辑结构和数据库物理结构
数据独立性分为两级:物理独立性和逻辑独立性。
④有统一的数据管理和控制功能
1.2 数据库系统的组成
数据库系统由数据库、数据库用户、软件系统和硬件系统组成。
①数据库用户
⑴最终用户⑵应用程序员⑶数据库管理员
②数据库管理系统(DBMS)
什么是数据库管理系统?
数据库管理系统是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS
⑴DBMS是数据库系统的核心软件
⑵DBMS的主要功能
数据定义功能DDL;数据操纵功能DML;数据库运行管理功能;数据库的建立和维护功能;数据通信接口;数据的组织存储和管理功能
⑶ DBMS对数据库的控制主要通过以下4个方面:Ⅰ数据的安全性
Ⅱ数据的完整性(由DDL定义约束条件完成的)
Ⅲ并发控制
Ⅳ数据恢复
1.3 数据库系统的体系结构
1.3.1 数据库系统的内部体系结构
1.三级模式结构
⑴模式(概念模式)
描述数据库中所有数据的逻辑结构,不涉及具体的值
⑵外模式(子模式,用户模式)
局部逻辑结构
⑶内模式(存储模式,物理模式)
存储
在数据库系统中,外模式可有多个,模式和内模式都只能有一个
2.二级映像
⑴外模式/模式映像
保证了数据与应用程序间的逻辑独立性
⑵模式/内模式映像
确保了数据的物理独立性
⑶优点:保证数据的独立性;简化了用户接口;有利于数据共享;有利于数据安全保密
1.3.2 数据库系统的外部体系结构
1.单用户结构
2.主从式结构
3.分布式结构
4.客服机/服务器结构
5.浏览器/服务器结构
1.4 现实世界、信息世界和计算机世界的联系
①现实世界,即客观存在的世界,其中存在各种事物及它们之间的联系,每个事物都有自己的特征或性质
②信息世界是现实世界在人们头脑中的反应,经过人脑的分析、归纳和抽象,形成信息,人们把这些信息进行记录、整理、归类和格式化后,就构成了信息世界
③计算机世界是信息世界的数据化,就是将信息用字符和数值等数据表示,便于存储在计算中并由计算机进行识别和处理。

1.4.2.2 两个实体间的联系
⑴一对一联系(1:1)⑵一对多联系(1:n)⑶多对多联系(m:n)
1.4.3.2 计算机世界的数据模型
⑴层次模型
用树形数据结构(有根树)来表示各类实体及实体间联系
主要操作:查询、插入、删除和修改
⑵网状模型
采用有向图结构表示记录型与记录型之间的联系
主要操作:查询、插入、删除和修改数据
⑶关系模型
关系模型的数据结构是规范化的二维表(不允许有表中表)
主要操作:查询、插入、删除和修改数据
数据操作是集合操作
缺点,与对象模型相比会产生“结构与行为相分离”的缺陷
⑷面向对象模型
最基本的概念是对象和类
习题-填空题
1.数据库技术的发展,主要经历了人工管理阶段、文件系统阶段和数据库系统阶段3个阶段
2.数据库的三级模式结构中,模式对应基本表
3.数据库的二级映像中,外模式/模式映像保证了数据与应用程序间的逻辑独立性
4.从最终用户来看,数据库系统的外部体系结构可分为5种类型:单用户结构、主从式结构、分布式结构、客户/服务区结构、浏览器/服务区结构
5.用有向图结构表示实体之间联系的模型是E-R模型
6.一本书可以有多个作者,一个作者可以有多本书,则书与作者间的联系类型是m:n(多对多联系)
7.数据库系统由数据库、数据库用户、软件系统和硬件系统组成。
第二章 关系数据库
2.1.1 关系的形式化定义
1.域(值域):相同数据类型的值的集合
域中所包含的个数成为域的基数(用m表示)
2.笛卡尔积:元组的集合
①笛卡尔积是指两个或多个关系(表)中所有元组(行)的所有可能组合,结果关系的属性(列)数等于所有输入关系的属性数之和
(最后结果:行乘列加)
②元组是数据库中关系(表)的一行数据,对应现实世界中的一个具体记录(比如学生表中“学号001、姓名陈诚、年龄19”就是一个元组)
元组是有序的,内容相同但是顺序不同是不同的元组
3.关系
①关系中不同域(列)的取值可以相同,它们必须起名字,称为属性。n元关系必有n个属性,属性的名字唯一
②具有相同关系框架的关系称为同类关系
③关系是笛卡尔积中所取的有意义的子集
④关系头(关系框架)是关系的数据结构的描述,它是固定不变的
⑤关系体是指关系结构中的内容或数据
2.1.2 关系的性质
⑴列同质(每一列中的分量必须来自同一个域,必须是同一类型的数据)
⑵不同属性可来自同一个域,但不同属性必须有不同的名字
⑶列无序,行无序
⑷关系中不允许出现相同的元组(行不完全相同)
⑸关系中每一分量必须是不可分的数据,不能出现“表中有表”的现象
2.2.1 关系模式
①一个关系模式应当是一个五元组
R(U,D,DOM,F)
R为关系名;U为组成该关系的属性名集合;D为属性组U中属性所来自的域;DOM为属性向域的映像集合;F为属性间数据的依赖关系集合
②关系模式→关系头(不变)
关系→关系体(变)
③如何判断ER图转化为几个关系模式
实体个数+m对n联系个数
[m对n]
关系(m的码,n的码,关系的属性)
④概念模式→逻辑模式(关系模式)
2.2.2 关系数据库模式
在一个给定的应用领域中,所有实体及实体之间联系所对应的关系的集合构成一个关系数据库
2.3 关系的码和关系的完整性
1.候选码 唯一能标识关系中的一个属性或属性集
⑴唯一性,关系R的任意两个不同的元组,其属性集K的值是不同的
⑵最小性
2.主码 每个关系必须选择一个主码,选定后,不能随意改变
3.主属性 指包含在候选码中的各个属性;非主属性 指不包含在任何候选码中的属性
4.外码 是关系(表)中的一个或多个属性组,其取值必须对应另一个关系(或自身)中主键(PK)或唯一键(UK) 的取值
2.3.3 关系的完整性
1.实体完整性
主码的值不能为空或部分为空
2.参照完整性
如果关系R的外码X与关系R1的主码相符,则X的每个值,或者等于R1中的主码的某一个值,或者取空值
3.用户自定义完整性
是针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求
习题
选择题
1.关系数据库模式是关系模式的集合
2.关系模式中的字段(属性)不可再分
3.关系中不同字段的域不能相同不属于关系性质
(关系性质:不同属性可来自同一个域,但不同属性必须有不同的名字)
填空题
1.在一个关系中,列必须是同质的,既每一列中的分量是同类型的数据,来自同个域
2.如果关系R2的外码X与关系R1的主码相符,则外码X的每个值必须在R1主码的值种找到,或者为空,这是关系的参照完整性规则
3.实体完整性规则是对主码的约束,参照完整性规则是对外码的约束
4.在关系数据库中,把数据表示成规范化的二维表,每一个二维表称为关系
篇章二 数据库操作
第3章 SOL的基本概念和MYSQL简介
3.1.2 SQL的主要特点
⑴是一种一体化的语言
⑵是一种非过程的语言
⑶是一种面向集合的语言
⑷既是自含式语言,又是嵌入式语言
3.1.3 SQL的分类
SQL按照实现的功能不同,主要分为4类:

crant授权;revoke取消授权
3.2 MySQL简介
3.2.1 MySQL的主要组件
MySQL分为Server层和存储引擎两部分。Server层包括连接器、查询缓存、分析器、优化器、执行器。Server层都是通用的组件,所有跨存储引擎的功能都在Server层实现
①连接器
主要用于与客户建立链接、获取权限、维持和管理链接。连接器首先要进行身份验证,验证通过之后即可建立链接。
②查询缓冲
MySQL8.0删除了查询缓存功能
Cache(缓存)和 Buffer(缓冲区)都用于优化数据处理,核心差异可简化为:
Cache(缓存):为提速,把高频用的数据从慢存储(如内存、磁盘)临时放到快存储(如 CPU 缓存、内存缓存区),让后续访问更快。比如 CPU 缓存存常用指令,浏览器缓存存网页资源。
Buffer(缓冲区):为协调速度差,给快慢不匹配的设备/操作(如磁盘和内存、键盘和程序)临时存数据,让双方能平稳工作。比如磁盘先把数据存到缓冲区,内存再慢慢取;键盘输入先存缓冲区,程序再处理。
简单说,Cache 是“为了快”,Buffer 是“为了稳”
3.2.2 MySQL相关知识
①默认端口号3306
②系统账户名称root
③Windows操作系统下MySQL的配置文件名my.ini
④默认的存储路径C盘
⑤假设MySQL的服务区名为mysql180,启动该服务器的命令是net start mysql180
⑥登录服务器的命令mysql -uroot -p 或者mysql -h localhost [-P 端口号] -uroot -p
⑦SQL语句默认以;结尾,不区分大小写
⑧数据库
show create database 命数据库名;
show databases;
create database if not exists 命数据库名;
use 命数据库名;
drop database if exists 命数据库名;
习题-填空题
SQL是结构化查询语言的缩写
345

被折叠的 条评论
为什么被折叠?



