一、结构数据模子
- 结构数据模子是直接面向数据库的逻辑结构
- 包括:
- 条理模子、网状模子、关系模子(紧张学习)、面向对象模子
- 条理模子:
- 网状模子:
- 关系模子
- 是一种二维表格结构
- 每个二维表由行、列组成(称为关系)
- 关系模子是对关系的描述
- 关系模子是由多个关系模子组成的集合
二、三级模式结构
背
三、二级映像
/表示为到
三、关系模子中的根本术语
注意:码=键
四、关系模子中的关系完整性
- 三个规则
- 实体完整性:主键不能为空
- 参照完整性:
- 比方:表a中有主键和外键,a中的外键对应b表中的主键,
- 如许的话,a表中的外键的值,只能是b表中的主键,或空,不能为其他
- 3. 用户定义完整性:用户对某一具体的数据制定某种约束检测。
复制代码
五、笛卡尔积
六、关系代数
符号大全
差解释:
投影
- 2. 符号:Π
- 3. 解释:在关系R中选出若干属性列A组成新的关系
复制代码
选择
- 4. 符号:
- 5. 含义:从关系R中选择满足条件的元组
复制代码
- 6. **注意:在关系代数中a=1和a=‘1’的含义是不一样的**
- 7. **a=1是比较a列和第一列的数据是否一致**
- 8. **a='1'是比较a列的元素是否等于字符‘1’**
复制代码 连接(join)
- 9. 符号: 
- 10. 分类:
- 1. 
- 2. 等值连接
- 3. 自然连接
- 11. 注意:**笛卡尔积是无条件产生的**
- 12. **如果使用自然连接,但是列于列之间没有相同属性的话,会触发笛卡尔积现象。**
- 1. 例如:
复制代码 θ连接
等值连接
- 等值连接和自然连接的区别:
- 等值连接 》》》只必要找到同名列的相同属性元素元组即可
- 自然连接》》》必要再删除重复的列
自然连接
- 含义:是去除重复属性列的等值连接(常考)
- 记作:
- 注意:假如R和S有多个属性同名,那必要R和S的多个属性值都相同。
外连接
左外连接
- 符号:
- 含义:取出左侧关系与右侧不匹配的元组,用null填充左侧
右外连接
- 符号:
- 含义:取出右侧关系与左侧比匹配的元组,用null填充左侧
全外连接
除(相识)
七、以上知识点例题
八、关系代数转SQL
- select * from 表明 where 属性 (符号) 属性
复制代码- select a.name,b.name from a,b
复制代码- select * from a,b where a.name = b.name
复制代码
九、SQL语言
简介:SQL Service 数据库的体系结构是由视图、根本表和存储文件之间结构组成。
SQL的数据定义语言
- create table 表名称 (
- # 属性
- name char,
- age char(2)
- )
复制代码- alert table test add f3 int
复制代码- alert table test modify f3 float
复制代码
- 列级完整性约束
1. not null
2. unique
3. default
4. not null unique
- # 创建test表,其中a属性不能为空,且值唯一,b属性默认值为'1'
- create table test (
- a int unique not null,
- b char(11) default '1'
-
- )
复制代码- create table (
- id int ,
- age char(11),
- imgId int,
- primary key(id), # 主键
- foreign key(imgId) references img # 外键
- ,
- check(name <=120) # 用户自定义
- )
复制代码 SQL的数据操纵语言
- # 插入
- insert into 表名称 (列名) values(元组值)
- # 删除
- delect from 表名称 where 条件
- # 修改
- update 表名称 set 列名称=想要修改的值 where 条件
复制代码 SQL的数据查询语言
- select distinct 列1 from 表名称
复制代码- #范围查询
- select * from test where between 条件1 and 条件1
- #like关键字 _表示一个字符,%表示一个或多个字符
- select * from test where like '王_'
- # 查询成绩为31,32,33的人
- select * from test where cj in (32,31,33)
- # 条件逻辑 and or not is
- # 排序查询 默认升序 asc 降序为:desc
- order by 列名称 desc
- # 查询一学号为降序的S表
- select * from s
- order by 学号 desc
复制代码
- 查询s表中年龄最大的人
- select max(age) from s
复制代码- # group by 列名称
- # 解释:把列中值相同的分为一组
复制代码
- 聚合和分组
- 因为聚合函数一般只有一个分组,但是假如要表现多列的话加上分组
- 实验顺序
- # 一般格式
- select * from a,b where 条件
- # 在sql service中连接分成了内连接(inner join)和外连接(outer join),mysql默认为内连接
- # 内连接分为:等值连接、非等值连接、自连接
- # 外连接分类:左外连接、右外连接、全外连接
- left outer join
- right outer join
- full outer join
复制代码
- # 例如:在A表中学生编号为105和该同学同岁的人
- select * from where age = (select age from A
- where no ='105')
复制代码 注意:
all(全部大于)
any(大于最小的)
- select 列1 from A union select 列1 from B
复制代码- 2. 交(intersect)
- 1. 例如:查A表和B表列1值都相同的
复制代码- select 列1 from A intersect select 列1 from B
复制代码- 3. 差(except)
- 1. 例如:把A表中属于B的删除
复制代码- select 列1 from A except select 列1 from B
复制代码 例题
SQL控制语句
- 数据控制师用户对数据的存储权力
- 授权的语句格式
- 说明(记):wtth grant option表示了,若指定了此子句,得到的权限用户还可以赋给其他人
- grant <权限> [on 对象属性] <对象名> to <用户> [wtth grant optino]
- # 例如:将对供应商s,零件p项目j的所有操作权力给用户u1,u2
- grant all privileges on table s,p,j to u1,u2
- # 将表s的插入权限给u3
- grant inster on table s to u3
- # 数据库s创建表的权力给u4
- grant createtab on database S to u4
复制代码- # 格式:
- revoke xxx from 用户
- # 例如:将u1、u2在s1,s2表中的所有权限回收
- revoke all privileges on table s1,s2 to u1,u2
- #例如 将所有用户对表s1的查询权限回收
- rovoke select on table s1 from public # public指全体用户
复制代码 视图
- 视图是一张假造表
- 注意:在视图中,子查询不能利用 ordeer by和distinct(去重)
- 创建视图
- create view 视图名 as select 查询子查询
复制代码
索引(index)
重点记:**内模式**是定义所有的记录范例、索引、和文件的组织方式。
例题
十、关系模式
一个关系模式应当为一个五元组(含关系名):R(U,D,dom,F)
含义解释
- R:关系名
- U:一组属性
- F:U的一组函数依靠
- D和dom(不做相识)
经常把关系模式看作:R(U,F)
关系数据库的规范化
扩展知识:
函数依靠
- 1. x函数决定y或y函数依赖于x
- 2. 记作:x—>y
复制代码
- 1. 例如:(学号,课程号)—>成绩
- 2. 解释:需要学号和课程号两个主属性才能推出成绩
复制代码
- 1. 例如:(学号,课程号)—>成绩 ,学号->姓名
- 2. 解释:在候选码中,其中一个真子集就推出了姓名
复制代码
- 通报依靠
- 伪通报依靠(x,y)->z, zx->b,b->c 可以得出:(x,y)->c
码和推理规则
- 码:k为R(u,f)中属性的组合
- 候选码:k的恣意子集不可能推出u
- 全码:主属性(候选码的一个属性)+非主属性
- 推理规则:
- 通报率:a->y,y->z 则a->y
- 合并原则:a->b,a->x,则 a->bx
- 分解规则:a->b,c包罗b 则a->c
属性闭包盘算
目标:找出可以完全推到出U的元素
本领:整个右侧,并找到右侧 没有出现的元素
可以找到两个候选码(a1a3)和(a1a2)
注意:当有多个候选码的时候,可以恣意选一个作为主键
十一、关系模式的范式
扩展
第一范式(1NF)
要求:第一范式不可再分
题目:不能清除数据冗余和更新(包括删除、修改、插入)非常题目
第二范式(1NF)
要求:满足第一范式,且每个非属性都完全函数依靠候选码
存在题目:可能存在通报函数依靠
分解过程:
第三范式(1NF)
办理第二范式存在的非主属性函数依靠我题目
存在题目:可能存在主属性对码的部分依靠和通报依靠
BC范式(BCNF)
消除主属性对候选码的部分函数依靠和通报依靠
第四范式(1NF)(相识)
总结
例题
十二、无损连接
- 含义:对关系模式分解时,原关系模式下一任合法的关系实例可通过自然连接规复
例题
答案:D
十三、E-R图
别名:概念模子
实体
接洽
- 分类:
- 一对一:1:1
- 一对多: 1:n
- 多对多 : n:m
属性
- 形状:椭圆
- 分类:
- 原子属性和复合属性(可再分)
- 单值属性和多值属性
- null属性
- 派生属性
例题
弱实体
十四、数据库分析与设计(紧张)
需求分析
紧张网络用户的需求,确定系统界限
产生的结果物:数据流程、数据字典、数据字典、系统需求说明书
概念结构设计
通过需求分析结果物,生成对应的E-R图
E-R图之间的冲突
- 定名冲突:
- 相同含义的属性在不同的E-R图中名称不同(异名同义)
- 结构冲突
例题:
逻辑结构设计
E-R图到关系模式的转换
- 一对一关系转换
- 方法一:创建一新的关系模式,存放两张表的主键
- 方法二(常用):恣意选一张表把另一张表的主键到场,作为该表的外键
- 一对多关系转换:
- 方法一:创建一新的关系模式,存放两张表的主键
- 方法二(常用):选关系为多的表把另一张表的主键到场,作为该表的外键
- 多对多关系转换:
物理结构设计
数据库实行阶段
数据库运行、维护阶段
例题
十五、事件管理
背4个特性:原子性、划一性、隔离性、持久性
例题:
十六、数据库的备份和规复
十七、并发控制技能
- 分类:
- 排它锁,简称:X锁或写锁
- 共享锁,简称:S锁或读锁
- 排它锁:事件假如到场它,其他事件都不能再给给事件加锁
- 共享锁:只能读事件,不能修改事件,其他只能再给它加共享锁
- 例题:
十八、分布式数据库
背
十九:杂题
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |