《数据库原理》知识点总结

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1数据库系统概述一、有关概念1.数据2.数据库(DB)3.数据库管理系统(DBMS)Access桌面DBMSVFPSQLServerOracle客户机/服务器型DBMSMySQLDB24.数据库系统(DBS)数据库(DB)数据库管理系统(DBMS)开发工具应用系统二、数据管理技术的发展1.数据管理的三个阶段人工管理文件系统数据库系统数据能否保存不能保存可以保存可以保存数据面向的对象某一应用程序某一应用程序整个应用系统数据的共享程度无共享,一组数据只能对应一个应用程序。共享性差,一个数据文件只能对应一个应用程序。共享性高数据的独立性不独立,它是应用程序的一部分。独立性差数据库与应用系统完全分开概念模型一、模型的三个世界1.现实世界2.信息世界:即根据需求分析画概念模型(即E-R图),E-R图与DBMS无关。3.机器世界:将E-R图转换为某一种数据模型,数据模型与DBMS相关。注意:信息世界又称概念模型,机器世界又称数据模型二、实体及属性1.实体:客观存在并可相互区别的事物。2.属性:3.关键词(码、key):能唯一标识每个实体又不含多余属性的属性组合。2一个表的码可以有多个,但主码只能有一个。例:借书表(学号,姓名,书号,书名,作者,定价,借期,还期)规定:学生一次可以借多本书,同一种书只能借一本,但可以多次续借。4.实体型:即二维表的结构例student(no,name,sex,age,dept)5.实体集:即整个二维表三、实体间的联系:1.两实体集间实体之间的联系1:1联系1:n联系m:n联系2.同一实体集内实体之间的联系1:1联系1:n联系m:n联系四、概念模型(常用E-R图表示)实体型:属性:联系:说明:①E-R图作为用户与开发人员的中间语言。②E-R图可以等价转换为层次、网状、关系模型。举例:学校有若干个系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授每人各带若干研究生。每个班有若干学生,每个学生选修若干课程,每门课程有若干学生选修。用E-R图画出概念模型。3数据模型一、层次模型:用树型结构表示实体之间的联系。①每个结点代表一个实体型。②只能直接处理一对多(含一对一)的实体关系。③查找层次数据库中的记录,速度较慢。二、网状模型:用图结构表示实体之间的联系。①每个结点代表一个实体型。②可以处理多对多的实体关系。③查找网状数据库中的记录,速度最快。三、关系模型:用二维表表示实体之间的联系。1.重要术语:关系:一个关系就是一个二维表;元组:二维表的一行,即实体;关系模式:在实体型的基础上,注明主码。关系模型:指一个数据库中全部二维表结构的集合。2.特点:①关系模型是建立在严格的数学理论的基础上的;②关系模型的存取路径对用户透明;③查找关系数据库中的记录,速度最慢。小结:数据有三种类型,DBMS就有三种类型,DB亦有三种类型。数据库系统结构一、数据库系统的体系结构①单机结构:DBMS、数据库、开发工具、应用系统安装在一台计算机上。②C/S结构:局域网结构4客户机:装开发工具、应用系统服务器:装DBMS、数据库③B/S结构:Internet结构服务器:装DBMS、数据库、开发工具、应用系统客户机:装IE即可三、数据库系统的模式结构1.三级模式①模式:是数据库中全体数据的逻辑结构和特征的描述。模式只涉及数据库的结构;模式既不涉及应用程序,又不涉及数据库结构的存储;②外模式:是模式的一个子集,是与某一个应用程序有关的逻辑表示。特点:一个应用程序只能使用一个外模式,但同一个外模式可为多个应用程序使用。③内模式:描述数据库结构的存储,但不涉及物理记录。2.两级映象①外模式/模式映象:保证数据库的逻辑独立性;②模式/内模式映象:保证数据库的物理独立性;3.两级映象的意义①使数据库与应用系统完全分开,数据库改变时,应用系统不必改变。②数据的存取完全由DBMS管理,用户不必考虑存取路径。数据库管理系统1.DBMS的功能:负责对数据库进行统一的管理与控制。①数据定义:即定义数据库中各对象的结构②数据操纵:包括对数据库进行查询、插入、删除、修改等操作。③数据控制:包括安全性控制、完整性控制、并发控制、数据库恢复。2.DBMS的组成:DDL语言DML语言DCL语言实用程序注意:①SQL集DDL,DML,DCL功能于一体;②所有应用程序通过SQL语句才能访问数据库一、基本概念1.码:能唯一标识元组的属性集。2.候选码:一个属性集既能唯一标识元组,且又不含有多余属性,一个关系模式可以有多个候选码。3.主码:任选候选码中的一个。54.主属性:主码中包含的各个属性。5.非主属性:不包含在主码中的各个属性。6.外码:设F是关系R的一个属性,不是R的主码,但却是另一个关系S的主码,则称F是关系R的外码。例:student(sno,sname,ssex,sage,sdept)Sc(sno,cno,grade)Sc的主码为:(sno,cno);外码为:sno关系的数学定义一、域(domain)1.定义:域是一组具有相同类型的值的集合。2.域的基数:域中所含数据的个数。二、笛卡尔积1.定义:给定一组域D1,D2,D3,则D1×D2×D3称为笛卡尔积。2.笛卡尔积D1×D2×D3对应一个二维表,所含元组的个数等于各个域的基数之积。三、关系1.定义:笛卡儿积的一部分元组称为关系。2.关系的目(或度):一个关系所含属性的个数。3.关系的性质任意两个元组不能完全相同,但属性名允许重复。四、关系的完整性1.实体完整性:指关系的所有主属性都不能取空值。注意:实体完整性不仅仅是主码整体不能取空值。2.参照完整性:指一个关系外码的取值必须是相关关系中主码的有效值或空值。例:班级(班名,人数)学生(学号,姓名,性别,密码,班名)在学生表中,班名的取值必须是班级表[班名]的值或空值。关系代数一、传统的集合运算设关系R、S的结构完全相同,则:R∪S:由属于R或属于S的元组组成。R∩S:由既属于R又属于S的元组组成。R-S:由属于R而不属于S的元组组成。思考:(R∩S)∪(R-S)=?R×S:设R有m个属性,K1个元组;S有n个属性,K2个元组,则R×S含有(m+n)个属性,(K1×K2)个元组。二、专门的关系运算61.选择:从关系R中选择满足条件的元组。记为:)(RF2.投影:从关系R中选择若干属性组成新的关系,并把新关系的重复元组去掉。记为:(R)A3.条件连接:将两关系按一定条件连接成一个新关系,记为:S)(RSRFF说明:条件连接:两关系可以没有公共属性,若有公共属性,则新关系含有重复属性。4.自然连接:将两关系按公共属性连接成一个新的关系,并把新关系的重复属性去掉。记为:SR说明:①自然连接:两关系至少有一个公共属性。②对于R的每个元组,S都从第一个元组开始判断,若两元组的公共属性值相同,则产生一个新元组添加到新关系中,最后把新关系中的重复属性去掉。5.除:给定关系R(x,y)和S(y,z),则R÷S=P(x),其中x,y,z为属性组。求解过程:①求R中x可以取哪些值,并求各值的象集。②求S在属性组y上的投影K。③检查每个象集是否包含K注:除不是一个必须的运算,可以由其它运算符代替。例:设有关系R,S如下图,求R÷S。RABCSBCDa1b1c2b1c2d1a2b3c7b2c1d1a3b4c6b2c3d2a1b2c3a4b6c6a2b2c3a1b2c1解:在关系R中,A可以取四个值,a1,a2,a3,a4。a1的象集为{(b1,c2),(b2,c3),(b2,c1)}a2的象集为{(b3,c7),(b2,c3)}a3的象集为{(b4,c6)}a4的象集为{(b6,c6)}S在(B,C)上的投影K为{(b1,c2),(b2,c3),(b2,c1)}显然只有a1的象集包含K,故R÷S={a1}结论:如何写关系代数表达式?答:①查询涉及多个关系时,一般使用∞→。②查询涉及“否定”时,一般用差运算。③查询涉及“全部”时,一般用除运算。7④查询涉及“至少”时,一般用×关系数据库规范化理论函数依赖一、有关概念:R表XHKHKMXMDZCJ961C1OS高明D170962C2DBS高飞D272962C4AI高飞D280962C1OS高明D175963C1OS高明D1901.函数依赖:任给R(U),U为属性集,x、y为U的子集,如果对于x的每个值,y有唯一确定的值与之对应,则称x决定y,或y函数依赖于x。记为:x→y。例:KH→KMXM→DZ(XH,KH)→CJKH→(KM,XM)2.完全函数依赖:若x→y,且对于x的所有真子集x′,都有x′y,则称x完全决定y,或y完全函数依赖于x。记为:yxf。例1:(XH,KH)→CJ但XH→CJKH→CJ故CJKHXHf),(例2:KH→KM则KMKHf结论:若x→y,且x只包含一个属性,则yxf。3.部分函数依赖:若x→y,且存在x的一个真子集x′,满足x′→y,则称x部分决定y,或y部分函数依赖于x。记为:yxp。例1:(KH,KM)→XM但KM→XM则XMKM(KHp),8例2:(XH,KH)→DZ但KH→DZ则DZKH(XHp),4.传递函数依赖:若x→y,y→z,但y∕x,则zxt例:KM→XM,XM→DZ,但XM∕KM二、平凡函数依赖与非平凡函数依赖设x→y,如果y是x的子集,则该依赖是平凡的。如:Sno,sname→sno如果y中至少有一个属性不在x中,则该依赖是非平凡的。如:Sno,sname→sname,sdept如果y中没有一个属性在x中,则该依赖为完全非平凡的。三、函数依赖的推理规则设有关系R,x、y、z为R的一个属性集,则有:①自反律:若xy,则x→y。②增广律:若x→y,则xz→yz。③传递律:若x→y,y→z,则x→z。注意传递律与传递函数依赖的区别。④合并律:若x→y,x→z,则x→yz。⑤分解律:若x→yz,则x→y,x→z。关系模式的规范化一、问题提出R表XHKHKMXMDZCJ961C1OS高明D170962C2DBS高飞D272962C4AI高飞D280962C1OS高明D175963C1OS高明D190答:存在问题①数据冗余大;②修改麻烦;③插入异常:应该插入到DB中的数据插不进去。如:新开课程没有学生选修时,新开课程的课程号、课程名插不进去。④删除异常:不应该删除的数据被删掉。9如选修某门课的学生毕业了,在删除学生信息的同时,把课程信息也删除掉。结论:一个好的关系模式应满足:①冗余应尽可能少;②应尽可能避免插入、删除异常;③消去关系中不合适的属性依赖关系。二、范式①什么叫范式?指一个关系的非主属性函数依赖于主码的程度。②什么叫关系规范化?指一个关系从低级范式向高级范式的转换过程。NFNFBCNFNFNFNF54321③应用:关系规范化理论应用在逻辑结构设计阶段。三、关系模式的规范化1.第一范式(1NF)①定义:若关系R的所有属性不能再分,则R∈1NF②存在问题③原因:存在非主属性对主码的部分依赖。DZKHXHXMKHXHpp),(),(KMKHXHCJKHXHpf),(),(④解决办法:消除非主属性对主码的部分依赖,将关系R一分为二,将满足完全依赖的属性集组成一个关系;将满足部分依赖的属性集组成另一个关系;R1表R2表XHKHCJKHKMXMDZ961C170C1OS高明D1962C272C2DBS高飞D2962C480C4AI高飞D2962C175963C190R1主码:(XH,KH)R2主码:KH2.第二范式(2NF)①定义:若关系R∈1NF,且它的每个非主属性都完全依赖于主码,则称R∈2NF。②存在问题:10冗余大:R1必要冗余,R2冗余可以修改。修改麻烦插入异常:如新来的教师没有上课,则该教师的信息就没办法插入R2表中。删除异常:若某位教师只授一门课,当该门课不开时,该教师的信息亦被删除。③原因:存在非主属性对主码的传递依赖。KH→XM,XM→DZ,

1 / 35
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功