qidao123.com技术社区-IT企服评测·应用市场
标题:
软考中级_【软件设计师】知识点之【数据库】
[打印本页]
作者:
自由的羽毛
时间:
2025-5-18 13:56
标题:
软考中级_【软件设计师】知识点之【数据库】
一、结构数据模子
结构数据模子是
直接面向数据库的逻辑结构
包括:
条理模子、网状模子、关系模子(紧张学习)、面向对象模子
条理模子:
是一个
树结构
一对多
网状模子:
是
图结构
多对多
关系模子
是一种
二维表格结构
比方:Excel
每个二维表由行、列组成(称为关系)
关系模子是对关系的描述
关系模子是由多个关系模子组成的集合
二、三级模式结构
背
包括:
概念模式
外模式
内模式
概念模式:
别名:模式
对应:根本表
外模式:
别名:用户模式、子模式
对应:视图
内模式:
别名:存储模式
对应:存储文件
三、二级映像
/表示为到
包括:
模式/内模式映像
外模式/模式映像
模式/内模式映像:
物理独立性
实现了模式到内模式映像之间的转换
外模式/模式:
逻辑独立性
实现了外模式到模式映像之间的转换
三、关系模子中的根本术语
注意:码=键
四、关系模子中的关系完整性
三个规则
实体完整性:主键不能为空
参照完整性:
比方:表a中有主键和外键,a中的外键对应b表中的主键,
如许的话,a表中的外键的值,只能是b表中的主键,或空,不能为其他
3. 用户定义完整性:用户对某一具体的数据制定某种约束检测。
复制代码
五、笛卡尔积
符号:✖
比方:
六、关系代数
符号大全
差解释:
1. 删除B中和A一样的,剩下的就是差
复制代码
投影
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填充左侧
全外连接
符号:
除(相识)
符号:➗
含义:R➗S,删除R中和S相同的元组
七、以上知识点例题
例题一
例题二
例题三
例题四
例题五
八、关系代数转SQL
投影
select * from 表名
复制代码
选择
select * from 表明 where 属性 (符号) 属性
复制代码
笛卡尔积征象
select a.name,b.name from a,b
复制代码
自然连接
select * from a,b where a.name = b.name
复制代码
例题1
九、SQL语言
简介:SQL Service 数据库的体系结构是由
视图、根本表和存储文件
之间结构组成。
SQL的数据定义语言
创建数据库
create database 数据库名称
复制代码
创建表结构
create table 表名称 (
# 属性
name char,
age char(2)
)
复制代码
增加表的列
alert table test add f3 int
复制代码
修改test表的f3范例为float
alert table test modify f3 float
复制代码
删除f3列
alert table test drop f3
复制代码
删除test表
drop table test
复制代码
列级完整性约束
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 * from 表名
称
复制代码
查询去重复的列
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(大于最小的)
带EXISTS测试的子查询
查询结果的并、交、差盘算
并(union)
比方A和B表的列1
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 查询子查询
复制代码
删除
drop 视图表
复制代码
例题
答案:BC
索引(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,y-z 以是可以得到:x->z
伪通报依靠(x,y)->z, zx->b,b->c 可以得出:(x,y)->c
码和推理规则
码:k为R(u,f)中属性的组合
候选码:k的恣意子集不可能推出u
全码:主属性(候选码的一个属性)+非主属性
关系R中的所有属性组合在一起
推理规则:
通报率: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属性
派生属性
可以从其他属性得来
比方:A可以通过盘算得到B
例题
弱实体
十四、数据库分析与设计(紧张)
数据库设计的战略:
自顶向下、自底向上
设计步调:
需求分析
紧张网络用户的需求,确定
系统界限
产生的结果物:
数据流程、数据字典、数据字典、系统需求说明书
概念结构设计
通过需求分析结果物,生成对应的E-R图
E-R图之间的冲突
定名冲突:
相同含义的属性在不同的E-R图中名称不同(异名同义)
比方:学生编号和学号
结构冲突
同一实体在不同的E-R图中有 不同的属性
例题:
逻辑结构设计
E-R图到关系模式的转换
一对一关系转换
方法一:创建一新的关系模式,存放两张表的主键
方法二(常用):恣意选一张表把另一张表的主键到场,作为该表的外键
一对多关系转换:
方法一:创建一新的关系模式,存放两张表的主键
方法二(常用):选
关系为多
的表把另一张表的主键到场,作为该表的外键
多对多关系转换:
创建一新的关系模式,存放两张表的主键
例题
物理结构设计
数据库实行阶段
数据库运行、维护阶段
例题
十五、事件管理
背4个特性:
原子性、划一性、隔离性、持久性
例题:
十六、数据库的备份和规复
备份方法
规复
例题
十七、并发控制技能
分类:
排它锁,简称:X锁或写锁
共享锁,简称:S锁或读锁
排它锁:事件假如到场它,其他事件都不能再给给事件加锁
共享锁:只能读事件,不能修改事件,其他只能再给它加共享锁
例题:
十八、分布式数据库
背
十九:杂题
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 qidao123.com技术社区-IT企服评测·应用市场 (https://dis.qidao123.com/)
Powered by Discuz! X3.4