《数据库原理》知识点总结.docx
- 文档编号:28301828
- 上传时间:2023-07-10
- 格式:DOCX
- 页数:35
- 大小:306.26KB
《数据库原理》知识点总结.docx
《《数据库原理》知识点总结.docx》由会员分享,可在线阅读,更多相关《《数据库原理》知识点总结.docx(35页珍藏版)》请在冰豆网上搜索。
《数据库原理》知识点总结
数据库系统概述
一、有关概念
1.数据
2.数据库(DB)
3•数据库管理系统
DBMS)
ccess
桌面DBMS
SQLServer
客户机/服务器型
DBMS
Oracle
MySQL
DB2
4.数据库系统(
DBS)
厂数据库(DB)
J数据库管理系统
幵发工具
DBMS)
应用系统
二、数据管理技术的发展
1•数据管理的三个阶段
(1)人工管理阶段
(2)文件系统阶段
(3)数据库系统阶段
概念模型
、模型的三个世界
1
•现实世界
3•机器世界:
将E-R图转换为某一种数据模型,数据模型与
注意:
信息世界又称概念模型,机器世界又称数据模型二、实体及属性
1.实体:
客观存在并可相互区别的事物。
2.属性:
3.关键词:
能唯一标识每个实体又不含多余属性的属性组合。
一个表的码可以有多个,但主码只能有一个。
4.实体型:
即二维表的结构
5•实体集:
即整个二维表
三、实体间的联系:
1.两实体集间实体之间的联系1:
1联系、1:
n联系、m:
n联系
2.同一实体集内实体之间的联系1:
1联系、1:
n联系、m:
n联系
一、层次模型:
用树型结构表示实体之间的联系。
二、网状模型:
用图结构表示实体之间的联系。
三、关系模型:
用二维表表示实体之间的联系。
数据模型
1.重要术语:
关系:
一个关系就是一个二维表;元组:
二维表的一行,即实体;关系模式:
在实体型的基础上,注明主码。
关系模型:
指一个数据库中全部二维表结构的集合。
数据库系统结构
数据库系统的模式结构三级模式
1.模式:
是数据库中全体数据的逻辑结构和特征的描述。
①模式只涉及数据库的结构;模式既不涉及应用程序,又不涉及数据库结构的存储;
②外模式:
是模式的一个子集,是与某一个应用程序有关的逻辑表示。
特点:
一个应用程序只能使用一个外模式,但同一个外模式可为多个应用程序使用。
内模式:
描述数据库结构的存储,但不涉及物理记录。
外模式/模式映象:
保证数据库的逻辑独立性;
模式/内模式映象:
保证数据库的物理独立性;
使数据库与应用系统完全分开,数据库改变时,应用系统不必改变。
数据的存取完全由DBMS管理,用户不必考虑存取路径。
数据库管理系统
1.
DBMS的功能:
负责对数据库进行统一的管理与控制。
数据定义:
即定义数据库中各对象的结构
数据操纵:
包括对数据库进行查询、插入、删除、修改等操作。
数据控制:
包括安全性控制、完整性控制、并发控制、数据库恢复。
2.
DBMS
的组成:
DDL
4五厶"
语言
DML
语言
DCL语言
实用程序
基本概念
1.码:
能唯一标识元组的属性集。
2.候选码:
一个属性集既能唯一标识元组,且又不含有多余属性,一个关系模式可以有多个候选码。
3.主码:
任选候选码中的一个。
4.主属性:
主码中包含的各个属性。
5.非主属性:
不包含在主码中的各个属性。
S的主码,则称F是关系R
6.外码:
设F是关系R的一个属性,不是R的主码,但却是另一个关系的外码。
关系的数学定义
一、域
1.定义:
域是一组具有相同类型的值的集合。
2.域的基数:
域中所含数据的个数。
二、笛卡尔积
1.定义:
给定一组域D1,D2,D3,则D1XD2XD3称为笛卡尔积。
2.笛卡尔积D1XD2XD3对应一个二维表,所含元组的个数等于各个域的基数之积。
三、关系
1.定义:
笛卡儿积的一部分元组称为关系。
2.关系的目(或度):
一个关系所含属性的个数。
3.关系的性质
任意两个元组不能完全相同,但属性名允许重复。
四、关系的完整性
1.实体完整性:
指关系的所有主属性都不能取空值。
注意:
实体完整性不仅仅是主码整体不能取空值。
2.参照完整性:
指一个关系外码的取值必须是相关关系中主码的有效值或空值。
五、专门的关系运算
1.选择:
从关系R中选择满足条件的元组。
2.投影:
从关系R中选择若干属性组成新的关系,并把新关系的重复元组去掉。
3.条件连接:
将两关系按一定条件连接成一个新关系
说明:
条件连接:
两关系可以没有公共属性,若有公共属性,则新关系含有重复属性。
4.自然连接:
将两关系按公共属性连接成一个新的关系,并把新关系的重复属性去掉。
说明:
①自然连接:
两关系至少有一个公共属性。
若两元组的公共属性值相同,则产生一个
②对于R的每个元组,S都从第一个元组开始判断,
新元组添加到新关系中,最后把新关系中的重复属性去掉。
关系数据库规范化理论
函数依赖
一、有关概念:
1.函数依赖:
任给(U),U为属性集,X、y为U的子集,如果对于X的每个值,y有唯一确定的值与之对应,则
称X决定y,或y函数依赖于X掉2.完全函数依赖:
的所有真子集X都有
结论:
若XTy,且
3.部分函数依赖:
X只包含一个属性,则
若XTy,且存在X
的一个真子集
X满足
T,则称X部分决定y,或y部分函数依赖于X掉
4.传递函数依赖:
若XTy,yTz,但y
二、平凡函数依赖与非平凡函数依赖
XSry,如果y是x的子集,则该依赖是平凡的。
如果y中至少有一个属性不在X中,则该依赖是非平凡的。
如果y中没有一个属性在X中,则该依赖为完全非平凡的。
关系模式的规范化
一、存在「题
数据冗余大;
修改麻烦;
插入异常:
应该插入到DB中的数据插不进去。
如:
新幵课程没有学生选修时,新幵课程的课程号、课程名插不进去。
删除异常:
不应该删除的数据被删掉
如选修某门课的学生毕业了,在删除学生信息的同时,把课程信息也删除掉
结论:
一个好的关系模式应满足:
冗余应尽可能少;
应尽可能避免插入、删除异常;
消去关系中不合适的属性依赖关系。
、关系模式的规范化
系;
第一范式(1NF)
定义:
若关系R的所有属性不能再分,则R€1NF
存在趣
原因:
存在非主属性对主码的部分依赖。
解决办法:
消除非主属性对主码的部分依赖,
将关系R一分为二,将满足完全依赖的属性集组成一个关系;将满足部分依赖的属性集组成另一个关
第二范式(2NF)
定义:
若关系R€1NF,且它的每个非主属性都完全依赖于主码,则称
R€2NF掉
第三范式(3NF)
定义:
若关系R€2NF,且它的每个非主属性都不传递依赖于主码,则称
R€3NF掉
结论
若R€1NF,且主码只含一个属性,则
R一定为2NF。
若R€2NF,且只有0〜1个非主属性,则R一定为3NF。
3NF一般控制了数据冗余,一般避免了操作异常。
范式并非越高越好,适可而止。
数据库设计
、数据库设计的步骤
需求分析:
了解分析用户的需要、要求。
概念结构设计:
根据需求分析的结果画概念模型(即E-R图)。
逻辑结构设计:
将E-R图转换为某一种数据模型,并优化。
物理结构设计
数据库实施
数据库运行与恢复
概念结构设计
、局部E-R图设计
确定局部范围
通常把系统涉及的各个部门或各个主要功能作为局部。
确定实体与属性
属性是不能再分的数据项;
联系只发生在两实体之间
原则上,能够作为属性,就不要作为实体。
、合并成总体E-R图
消除各局部E-R图的冲突「题
按公共实体名合并,生成初步E-R图。
逻辑结构设计
一、联系的属性和主码
(1)联系的属性:
必须包含相关联的各实体型的主码。
(2)联系的主码1:
1联系:
可以是相关联的任一实体型的主码。
1:
n联系:
必须是n方实体型的主码。
m:
n联系:
必须是相关联的各实体型的主码之和。
、E-R图向关系模型的转换
(1)
把每个实体型转换为一个关系模式。
(2)
1:
1联系:
可以消化到相关联的任一实体型对应的关系模式中。
(3)
1:
n联系:
可以消化到n方实体名对应的关系模式中。
(4)
m:
n联系:
必须转换为一个关系模式,并且不能消化。
(5)
多元联系:
不能消化
物理结构设计与数据库实施
1.物理结构设计
在逻辑设计的基础上,为每个关系模式选择合适的存储结构与存储方式。
选择存储结构:
即决定每个表的记录顺序。
选择存取方式:
即决定为哪些属性建立非聚集索引,以便加快查找速度。
一般把经常查询的属性名指定为非聚集索引。
2.数据库实施
主要工作:
定义数据库结构;
组织数据入库;
编写应用程序;
数据库试运行;
创建和使用数据库
、数据库文件
1.
如果数据库很大,可以使用一个主要数
一个数据库至少有一个主要数据文件和一个事务日志文件。
据文件、多个次要数据文件和多个事务日志文件。
事务日志文件(.ldf):
用来记录对数据库对象的所有更新操作。
2•系统数据库
Master数据库、Model数据库
、创建数据库
1•打幵数据库:
Use数据库名
2•删除数据库:
Dropdatabase数据库名
三、修改数据库
1•分离和附加数据库
2.备份和还原数据库
3•数据的导入和导出
创建和使用表
数据类型
1.字符型
char(n)、varchar(n)、Text
2.统一码字符型
每个英文字母、数字、汉字算
1个字符,每个字符占2个字节。
nchar(n)、nvarchar(n)、ntext
3.
整型
4.
实型
精确数值型
近似数值型
5.
贷币型
6.
日期时间型
使用对象资源管理器创建和管理表
、创建表
1.在一个表中只能定义一个标识字段。
2.只有整型和精确数值型(
decimal、numeric)字段才能指定为标识字段。
3.把某个字段指定为公式字段。
二、设置约束
1.主键约束:
每个表中只能有一列或一个组合被指定为主键,主键中的各个列不能为空值。
2.外键约束:
创建外键约束,就是定义两个表的永久关联,这两个表分别称为主键表、外键表。
外键表中外键的值
只能是主键表中主键的有效值或空值。
3.唯一性约束:
主键约束与唯一性约束的区别是:
1)在一个表中只能定义一个主键约束,但可定义多个唯一性约束;
2)指定为主键约束的列不能取空值,但指定为唯一性约束的列允许取空值。
4.唯一性约束:
用于限制输入到一列或多列的值的范围,保证数据库的数据完整性。
5.默认值约束:
T-SQL
一、SQL语言的特点
1SQL语言集数据定义、数据查询、数据操纵、数据控制的功能于一体。
②所有的DBMS都支持SQL语言。
T-SQL基础
、创建和使用数据库
1.创建数据库
createdatabase数据库名
2.使用数据库
Use数据库名
3.删除数据库
dropdatabase数据库名
定义表
1.创建表
①指定标识字段:
identity(标识种子,标识增量)
2.删除表
droptable表名,?
表名三、select语句
select*/表达式表
[into新表]
from表名,?
表名
.属性名
*代表所有属性名
若一个属性名来自多个表,则属性名前须冠以表名,格式为:
表名
设置表达式的别名:
表达式As别名
限制查询结果的记录行数:
在Where子句中指定连接:
Where表名1.属性名=表名2.属性名
orderby属性名1[Asc/Desc],属性名2[Asc/Desc]
4.
聚合函数
5.
Groupby子句
使用Groupby子句时,Select子句只能使用分组项字段和聚合函数
①Having子句只能跟在Groupby子句之后,且只能使用聚合函数和分组项字段。
②where子句放在Groupby子句之前,甚至可以没有Groupby子句;且不能包含聚合函数。
功能:
将查询结果保存到新的基表中录
查询的分类
单表查询
嵌套查询
(1)每次插入一条记录
insertinto表名[(属性名表)]values(表达式表)
(2)插入子查询的结果
insertinto表名[(属性名表)]
update表名
set属性名二值,?
,属性名二值[where条件]
3.delete语句
、常量:
广字符型:
由单引号括住
整型
实型
二、变量:
1.声明局部变量
Declare变量名类型
2.给局部变量赋值
使用set语句:
Set变量名=表达式
使用select语句
Select变量名=表达式,?
?
,变量名=表达式
[from表名]
①使用print语句
Print表达式
2使用select语句
Select表达式,?
?
,表达式
[from表名]
4.局部变量的作用域:
只能在声明它的批处理中使用。
批处理
1.什么叫批处理?
一个脚本由一个或多个批处理组成,批处理以GO作为结束标志。
2.批处理是脚本的编译单位,当一个批处理中的某个语句出现编译错误,则批处理中的任何语句无均法执行。
3.当一个批处理中的某个语句出现运行错误,则批处理中当前语句和它之后的语句将无法执行。
流程控制语句
一、begin?
end语句
、if-else语句当逻辑表达式包含子查询时,子查询必须用括号。
括住三、case表达式说明case表达式不是语句,不能单独执行。
四、while语句
2.专用于循环体的语句:
Continue返回while语句的入口。
Break、Continue必须放在循环体内,并常与if-else语句结合使用。
其它语句
1.Return语句
2.存储过程
创建存储过程
删除存储过程
函数
1.
创建函数
createfunction函数名(@形参名类型)returns类型
as
begin
函数体
End
②两类函数:
标量函数、内嵌表值函数
Exec@变量名1=函数名常量|@变量名
Print函数名(常量I@变量名)
Dropfunction函数名
T-SQL高级应用
、查询的分类
单表查询
%连接查询
连接查询:
在where子句中指定连接
三、连接查询:
在from子句中指定连接
内连接:
from表名1
innerjoin表名2
on
条件
左外连接:
from表名1
leftouterjoin
表名
2on
条件
右外连接:
from表名1
rightouterjoin
表名
2on
条件
完全外连接
:
from表名
1full[outer]
join
表名2
on
交叉连接
1.
2.
3.
条件
4.
5.
四、嵌套查询
事务处理
事务是用户定义的一组操作序列。
①事务是并发控制的基本单位。
②一个事务包含的诸操作要么都执行,要么都不执行。
事务的属性
持久性
4.在事务内设置保存点
使用游标
一、游标的概念
1.每个表均有一个游标,它可以指向表的任意一条记录。
2.移动游标的方法:
②在前台应用程序中,使用主语言实现对游标的移动。
Transact-SQL游标的使用:
4.声明游标
Declare游标名cursor[forward—。
niy/scroll[[global/local][read_onIy]forselect语句
forward—。
nly(只进游标):
只能进行next操作,缺省为forward_oniy。
[global/local]:
缺省为:
global2•打幵游标
open游标名
打幵游标时,游标指向查询结果集的第一条记录之前。
3.提取游标
fetch[next/prior/first/last]from游标名
[into
局部变量名表]
缺省into子句:
移动游标,并显示当前记录的内容
含into子句:
移动游标,并将当前记录各属性值依次赋给部变量。
4.关闭游标
close游标名
5.释放游标
索引
一、索引的概念:
的特定信息。
、索引的类型:
聚集索引:
影响数据表的记录顺序非聚集索引:
不会影响数据表的记录顺序
注:
一个表只能建立一个聚集索引,但可以建立若干个非聚集索引。
三、创建索引
1•自动创建索引:
。
如果在数据表的某个属性设置主键约束或唯一约束,则系统将在这些属性上自动创建唯一索引。
。
自动创建的索引随约束的存在而存在,随约束的消失而消失。
2.使用SQL语句创建索引
索引名
Create[unique][clustered/nonclustered]index
On表名(属性名[asc/desc],属性名[asc/desc])
注:
①若未指定clustered,则创建非聚集索引;
③text,ntext类型的字段不能指定为索引字段。
四、删除索引:
Dropindex索引名,?
,索引名
视图
一、视图的特点
①视图只有结构,没有记录,是虚表;
②一个视图总对应着个select语句;
3对视图的查询、更新,实际上是对基本表的查询、更新。
、定义视图:
1.创建视图:
Createview视图名[(属性名,?
,属性名)]
As子查询
[withcheckoption]
说明:
视图的属性个数必须与子查中询select子句的表达式个数相同。
2.删除视图:
Dropview视图名,?
,视图名
select*/表达式表
from视图名,?
视图名
[where条件]
[groupby属性名][orderby属性名][Asc/Desc]
四、操纵视图:
1.
向视图插入一条记录
insertinto视图名[(属性名表)]values(表达式表)
update视图名set属性名=值,?
,属性名=值[where条件]
缺省where子句,默认为更新全部记录。
deletefrom视图名[where条件]
触发器
一、维护数据完整性的措施:
创建约束,创建触发器基于一个表创建创建规则:
以单独的对象创建,可以绑定到数据库的所有表中。
二、触发器类型:
1.after触发器:
1.Insteadof触发器:
三、创建触发器:
Createtrigger触发器名
On表名|视图名
For|after|Insteadof触发操作
AsSQL语句序列
说明:
①for或after,表示创建
after触发器。
②触发操作是指
Insert、
update、delete中的一个或多个。
五、删除触发器
Droptrigger触发器名[,触发器名
③把一个登录名指定为数据库的
public和db_owner,则登录名对该数据库拥有全部权限。
数据库的构建与数据装入
alenovo*ISQLServer9:
.5000亠Lencvc一I:
VS辜
_I务玮5?
亟辜
JIzjS
邑乞s理瓷
・_i二r嵩瓷¥孕罢
J表
・一J手统巻
”」dbd瘗者倉亘丟
・」dbe言亘旻一韦管
-Jdbo•苣理°唔亘表
・Jdbu.e退+三一孚*
*jdbc.lSe^
,_jdbd區书信?
表
(1)图书信息表
LENOVOPC®书管一«障dboEMi信宜表对魚資浸龍It洋
列名
数据类型
►9ISBN
/archarC20)
书名
/drchar
■*
作者
7archar(12)
出版社
/archdrjW;
7
出版日期
dateome
V
简介
archar(200:
7
靜:
主
archar(200)
7
LENOVOPC&Bg^«KdboB书信建養对欽换理3關I息
【湖
书名
作書
岀伍社
岀阳<1
§3
►
ATHMM
陈建勋
ALL
M.£i
AU£
to-
i+MW
耒艾官
中即电岀列
M-t.
Mii
AU£
K
・
新据结构
2叶友
青3犬学出版社
"VZ.
Mil
AUj!
J
日中因
科字岀版社
MU
ACU
J
W
计直机应用
馳林
电手工业出胁t
AtU
MU
厂c
iBI
科字出阪社
AU.
AUi
AUi
r
:
1吾言整
MU
Mil
AUi
*也
MU
Mil
MO
(2)读者信息表
LENOVOdbdigS信亘表
冗诈仝
列名
►?
15者字号
读者姓名点者性别麻车电话所在毛
生敢时冋尖为时间违章情况?
计惜书畐王
Th丁可;10
「'已W;1
【勺丁
datetjne
datebne
3^3'ar:
5C.
LENOVOPCgfig^SSdbo.SSfllilM皿兀H鼠笨冷曲讎■第匸顫5首3i磁■寵
■WR-
(3)管理员信息表
他:
II
II
Vi
LL
兀我竇漕巻理器洋堀信S
冗许主
LENOVOPC.S1?
管…dbo•管理员信宜表
埶扌居兰型
LENQVaPC•图书管」dbo眉理员廳表LEN0QPC黔岂•”,g苣酸唁雰厂A5牆淫S^>5亡昶
^Ifc
电话
11k
■(B±
1■斗4V
k“
■
3.
P,
■「■
1
■丄■N
寸韦
里
1…
t.
¥八、
Pt
卜■■上
亠1■壬
1
,—丄鼻
?
飞
里
I.
V一
P1
J■■F•j—
"?
'■
P■■V
;沾
S
1…
J.
丫…
小,*
*ir聲
“「1
1**
'■A4
iul
S
(.
t,
丫…
r-f
la
卄
X
1…
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库原理 数据库 原理 知识点 总结
![提示](https://static.bdocx.com/images/bang_tan.gif)