数据库

数据库数据特点

Massive 数据量大
Presistent 持久
Safe 安全
Multi-user 多用户
convenient 方便
Efficient 高效
feliable 可靠

一个数据库网站

https://db-engines.com/en/

数据库的基础概念

数据和信息

信息:客观事物的存在方式和状态
数据:用来记录信息的可识别的符号 是信息的具体表现形式
数据与信息的连接:数据是信息的载体 信息是数据的内涵

数据库 数据管理系统 数据库系统 数据库管理员

数据库:
是长期存储在计算机内 有组织的 可共享 ,可存储,可读写的数据集合
数据库管理系统:
用户与操作系统之间的一层数据管理软件

数据库

数据库系统的体系结构

三层模式 两层印象

逻辑模式:数据库中全体数据的逻辑结构和特征的描述,逻辑模式与具体的物理实现细节无关,是一种体现用户需求的公共数据结构,(类似于中间件),一个数据库只有一个逻辑模式

外模式:具体使用者看到的数据结构(局部数据的逻辑结构和特征),一个应用有多个外模式

内模式:数据物理结构和存储方式的描述,数据在数据库内部的表示方式,一个数据库只有一个内模式

外模式印象:每一个外模式对应一个外模式印象,定义外模式与逻辑模式的对应关系

内模式印象:定义数据全局的逻辑结构与存储结构之间的对应关系

两级印象保证数据的逻辑独立性和物理独立性。

当内模式改变了,只要改变内模式印象就可以不改变逻辑模式
当逻辑模式改变了,改变两级印象,就可以不改变外模式和内模式
数据库

数据模型

数据模型要满足模拟真实世界,便于理解,便于实现。

数据结构
数据操作
数据的约束条件

关系模型
半结构化模型
 网状模型//早期模型
 层次模型
 XML //网络数据表示格式,传输和存储数据
 JSON
不同的模型具体区别就是数据结构不同

数据管理技术的产生和发展

人工管理阶段
文件管理阶段
数据库系统

关系数据库

关系数据模型

关系型: 表 、SQL
非关系型: noSQL

关系数据库系统: 是支持关系模型的数据库系统

关系模型:
 关系数据结构
 关系操作
 完整性约束

关系数结构:
 单一的数据结构:关系
  实体及实体间的联系均用各种关系来表示
 数据的逻辑结构:二维表
  关系模型中的数据结构就是一张二维表
关系模型建立在几何代数之上
数据库
域:一组具有相同数据类型的值的集合

笛卡尔积:
数据库
笛卡尔积每行代表一个元组,每列代表一个域。

关系:
数据库
关系也是一个二维表
 每行表示一个元组
 每列是一个域,表示一个属性

码(key,键)
候选码:在关系中唯一能标识元组的属性或属性集
主属性:候选码的各个属性
主码:用户选作元组表示的候选键
全码:关系的说有属性是这个关系的全码

基本关系的性质:
  列是同质的
 列的顺序无所谓
 行的顺序无所谓

什么是关系模式
  关系模式是对关系的描述
  学生(学号,姓名,年龄,性别,籍贯)
  R(A1,A2,A3,A4,A5)
  关系是关系模式在某时刻的取值

关系数据库:
在一个给定的应用领域中,实体及实体之间联系的关系的集合构成一个关系数据库

关系操作:
  查询 插入 删除 修改

关系操作特点:
 集合操作方式

关系数据语言的种类:
  关系代数的语言
  关系演算的语言

关系的完整性约束:
  实体完整性
  参照完整性
  用户定义的完整性
(前两者必须满足)

实体完整性:
  主码唯一且不为空
  主属性不能取空

参照完整性:
外码:
 一个关系中的某个属性是某个关系的主码,外码作为主码的关系是参照表
 外码必须取参照表的合适值或者空置

用户自定义的完整性:
  用户自己定义的规则

关系数据语言

关系代数

一种抽象的数据查询语言
用对关系的运算来表达查询

关系代数 关系演算 :早期 ,现在不用

关系代数:
  并 差 交
  投影 选择
  笛卡尔积、连接
  重命名

运算对象:关系
运算符:4类
运算结果:关系
数据库
投影:
数据库
选择:
数据库
数据库
笛卡尔积:
数据库
连接Join:
数据库
数据库
等值连接,大于连接,小于连接
自然连接:在等值连接上去除重复的列

重命名:
数据库
等价运算:
数据库
运算符优先级:
数据库

表达树:
数据库

SQL (Structured Query Language)

数据库

DDL

数据定义语言
定义表:
  创建表
  删除表
  修改表定义
数据库
定义基本表:
 关系名(表名)
 属性名(列名)
 属性数据类型
 完整性约束
数据库
SQL支持的数据类型:
整型:
bigint 8个字节
int 4个字节
smallint 2个字节
tinyint 1个字节
bit 只能取0或者1
精确数值数据:
decimal (p,q) p数据宽度,q小数点后面的位数
numeric
浮点数类型:
float 8个字节存储数据 ±3.04E+308
real 位数为24 4个字节 ±3.04E+38
字符串数据类型:
char : char(n)固定长度为n个字符的字符串
varchar:varchar(n),可变长度,最长长度为n个字符串
日期时间数据:
data :DATE ‘yyyy-mm-dd’
time:‘hh:mm:ss’
datatime:
数据库
数据库
主键唯一不能为空值,唯一键可以为空值。
数据库
FOREIGN外键 REFERENCE参照表

修改基本表:
数据库
数据库
删除基本表:
数据库

DML

数据操作语言

DCL

数据控制语言

INDEX

定义索引

VIEW

定义视图

嵌入式SQL

当前使用

数据库设计

数据库管理