欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据库系统概论王珊第五版学习笔记.docx

    • 资源ID:16343814       资源大小:532.47KB        全文页数:27页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库系统概论王珊第五版学习笔记.docx

    1、数据库系统概论王珊第五版学习笔记第一章1.数据库的四个基本概念:数据、数据库、数据库管理系统、数据库系统。数据:是数据库中存储的基本对象。描述事物的符号称为数据。数据库:是长期存储在计算机内、有组织的、可共享的大量数据的集合。数据库数据具有永久存储、有组织和可共享三个基本特点。数据库管理系统:是计算机的基础软件。数据库系统:是由数据库、数据库管理系统、应用程序和人组成的存储、管理、处理和维护数据的系统。2.数据处理和数据管理。数据处理:指对各种数据进行手机、存储、加工和传播的一系列活动的总和。数据管理:指对数据进行分类、组织、编码、存储、检索和维护。3.数据独立性。物理独立性:指用户的应用程序

    2、与数据库中数据的物理存储是相互独立的。逻辑独立性:指用户的应用程序与数据库的逻辑结构是相互独立的。4.数据模型-是对现实世界数据特征的抽象(现实世界的模拟)。数据模型是数据库系统的核心和基础。概念模型:信息模型,按照用户的观点来对数据和信息建模,主要用于数据库设计。逻辑模型:按照计算机系统的观点对数据建模。物理模型:描述数据在计算机内部的表示方式和存取方法。数据模型组成要素:数据结构、数据操作、数据的完整性约束条件。5.信息世界中的基本概念。 实体:客观存在并可相互区别的事物。 属性:实体所具有的某一特征。 码:唯一标识实体的属性集。 联系:失误内部以及事物之间是有联系的。实体内部的联系通常是

    3、指组成实体的个属性之间的联系,实体之间的联系通常是指不同实体集之间的联系。实体之间的联系有一对一、一对多和多对多等各种类型。6.数据完整性约束条件。 实体完整性:检查主码值是否唯一,检查主码的各个属性是否为空。实体完整性在创建表时用primary key 主键来定义。 参照完整性:检查增删改时检查外码约束。在创建表时用外码 foreign key短语定义。 用户定义完整性:创建表中定义属性的同时,可以根据应用要求定义属性上的约束条件,即属性值限制。列值非空(not null) 、列值唯一(unique)、检查列值是否满足一个条件表达式(check短语)7.数据库系统的模式。 型:是指对某一类数

    4、据的结构和属性的说明,对结构的描述和说明。 值:是型的一个具体赋值。 模式:是数据库中全体数据的逻辑结构和特征的描述,对结构进行描述,仅仅涉及型。模式的一个具体值称为模式的一个实例。模式反应的事数据的结构及其联系,而实例反应的是数据库某一时刻的状态。8.数据库的三级模式结构。 模式(逻辑模式):是数据库中全体数据的逻辑结构和特征的描述,需要定义数据想的名字,类型,取值范围和数据之间的联系,安全性完整性要求等。 外模式(子模式):数据库中数据的局部逻辑结构。 内模式(存储模式):是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。第二章1.关系模型-关系数据结构、关系操作集合、关系完整

    5、性约束三部分组成。2.关系。 域:一组具有相同数据类型的值的集合。 关系:笛卡尔积的有限子集。 候选码:关系中某一属性组的值能唯一地标识一个元组。 候选码的诸属性称为主属性。不包含在任何候选码中的属性称为非主属性。3.表。 基本表(基本关系、基表):实际存在的表,是实际存储数据的逻辑表示。 查询表:是查询结果对应的表。 视图表:是由基本表或其他视图表导出的表,虚表,不对应实际存储的数据。4.关系代数:用对关系的运算来表达查询。关系代数运算的三个要素:1.运算对象:关系;2.运算结果:关系;3:运算符:四类选择运算是从行的角度进行的运算查询信息系(IS系)全体学生 Sdept = IS (Stu

    6、dent)投影操作主要是从列的角度进行运算。投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行)查询学生的姓名和所在系,即求Student关系上学生姓名和所在系两个属性上的投影 Sname,Sdept(Student)连接也称连接:连接运算从R和S的广义笛卡尔积RS中选取(R关系)在A属性组上的值与(S关系)在B属性组上值满足比较关系的元组除第四章1.数据库安全性控制。 用户身份鉴别:静态口令鉴别,动态口令鉴别、生物特征鉴别、智能卡鉴别。 存取控制:定义用户权限。合法权限检查。自主存取控制:授予不同对象不同权限。强制存取控制:数据库中的内容带有密级标记,只有具有相应标记的用

    7、户才能够访问。2.授权。授权:-对属性列授权必须指出相应的属性列名。 grant select,insert,delete,update on table Student,Sc to 用户1,用户2收回权限:revoke selecton table Student,Scfrom 用户1,用户23.角色。 数据库角色是被命名的一组与数据库操作相关的权限,角色是权限的集合。 创建角色、对角色进行授权、将角色授权给其他的角色或者用户、角色权限的收回。 创建角色:create role 角色1,角色2 给角色授权:grant select,insert on table Student to 角色1

    8、,角色2 将角色授权给其他用户:grant 角色1 to 用户1,用户2 收回角色权限:Revoke selectOn table StudentFrom 角色14.视图。 创建视图: Create view 视图1 As Select * From Student Where Sdept = CS第五章1.数据库完整性。数据库的完整性是指数据的正确性和相容性。数据的正确性是指额数据是符合现实世界语义、反应当前实际状况的。数据的相容性是指数据库同一对象在不同的关系表中的数据是符合逻辑的。2.保障数据库的完整性。 提供定义完整性约束条件的机制。 提供完整性检查的方法。 进行违约处理。数据完整性约

    9、束条件前文中已经讲述,此处不再赘述。第六章1函数依赖。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称 “X函数确定Y” 或 “Y函数依赖于X”,记作XY一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式的集合,这种过程叫做规范化。1NF(第一范式)如果一个关系模式R的所有属性都是不可分的基本数据项,则R1NF第一范式是对关系模式的最起码的要求。不满足第一范式的数据库模式不能称为关系数据库。2NF:如果R1NF,且每一个非主属性完全依赖于码,则R2NF采用投影分解法将一个1NF的关系分解为多个2NF的关系3NF:

    10、如果R 是2NF,且每个非主属性都不传递依赖于R的候选码,则R属于3NF。2NF消除非主属性的部分依赖,3NF消除非主属性的传递依赖BCNF的定义:BCNF不仅对非主属性有要求,而且也对主属性有要求如果一个关系模式只有两个属性构成,则该关系模式一定属于BCNF第七章1.数据库设计,数据库设计分6个阶段。需求分析。概念结构设计。逻辑结构设计。物理结构设计。数据库实施。数据库运行和维护。2.数据项是不可再分的数据单位数据结构反映了数据之间的组合关系。数据流是数据结构在系统内传输的路径。数据存储是数据结构停留或保存的地方,也就是流的来源和去向之一。具体处理逻辑一般用判定表或判定树来描述。数据字典是关

    11、于数据库中数据的描述,是元数据,而不是数据本身。数据字典在需求分析阶段建立,在数据库设计过程中不断修改、充实、完善。概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。自顶向下的进行需求分析,自低向上的设计概念结构。定义数据库模式主要是从系统的时间效率、空间效率、易维护等角度出发。物理设计的第一任务就是要确定选择那些存取方法,即建立哪些存取路径。3. ER图 实体型:用矩形表示,矩形框内写明实体名 属性:用椭圆形表示,并用无向边将其与相应的实体型连接起来联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1

    12、:n或m:n)联系的属性:联系本身也是一种实体型,也可以有属性。如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来在关系总数尽量少的情况下,该E-R图转换后关系模式包括:学生(学号,姓名,性别,专业,出生日期,学院编号)课程(课程编号,课程名称,课程类别,学分)学院(学院编号,学院名称,办公室电话,院长教职工编号)教职工(教职工编号,姓名,参加工作时间,职称,学院编号)选课(学号,课程号,成绩)第八章1.游标。 使用:声明游标、打开游标、从一个游标中提取信息、关闭释放游标。声明游标:Declare XXX cursor For select *打开游标:open XXX关闭游标:cl

    13、ose XXX释放游标:deallocate XXX声明一个名为curAllCourse的游标,完成统计有多少学生选修了全部课程,输出学生学号和姓名。declare curAllCourse cursor /声明游标for SELECT SNO,sname from student where sno in ( select sno from sc group by sno having COUNT(*)= ( select COUNT(*) from course ) )for read onlyopen curAllCourse /打开游标declare sno char(10),snam

    14、e char(10) /声明变量set sno=0fetch next from curAllCourse into sno,sname /从游标中取数据while FETCH_STATUS = 0begin if sname is null set sno = sno + 1 select sno 学号,sname 姓名 fetch next from curAllCourse into sno,snameendCLOSE curAllCourse /关闭游标DEALLOCATE curAllCourse /释放游标2.存储过程。 类似与C语言中的函数。编写一个存储过程,在sc表统计每个学生

    15、的平均分.create proc avergrade /创建存储过程asbegin select sno,avg(grade) 平均分 from sc group by snoendexec avergrade /执行存储过程drop procedure avergrade /删除存储过程对练习1的存储过程进行改进,添加一个输入参数学号,使存储过程能根据输入的学号计算该学生的平均分create proc avergradesno char(10)asbegin select sno,avg(grade) 平均分 from sc where sno = sno group by snoendex

    16、ec avergrade 04drop procedure avergrade在练习2的基础上添加一个输出参数平均分,计算指定学号的平均分,然后将平均分输出。create proc avergradesno char(10),saving int outasbegin select saving = avg(grade) from sc where sno = sno group by snoenddeclare avg int set avg = 0exec avergrade 02,avg outselect avg 平均分drop procedure avergrade3.函数。函数必须

    17、返回指定类型,可以返回表,有输入参数。创建成绩转换函数,实现百分制成绩与优、良、中、及格、不及格五个等级的换算.CREATE FUNCTION grade_trans(grade FLOAT) RETURNS CHAR(16) AS BEGIN DECLARE class CHAR(16) SELECT class = CASE WHEN grade IS NULL THEN 还没参加考试 WHEN grade = 60 and grade = 70 and grade = 80 and grade 90 THEN 良好 ELSE 优秀! END RETURN(class) END selec

    18、t dbo.grade_trans(88)查询某个院系所有学生所选的每门课的平均成绩。create function aver (p char(10) returns tableas return ( select cno 课程号,avg(grade) 平均成绩 from student,sc where student.sno=sc.sno and sdept=p group by cno ) select * from dbo.aver(cs)drop function aver求某个院系选修了某门课的学生人数。create function people(p0 char(10),p1 c

    19、har(4) returns intas begin declare renshu int select renshu = ( select COUNT(*) 选课人数 from student,sc where student.sno = sc.sno and cno = p1 and sdept = p0 ) return renshu end select dbo.people(cs,2)drop function people4.触发器。 Create trigger XXX On table for /after /instead of Insert,delete,update As

    20、 触发器实际需要触发内容For:用法同afterAfter:执行完sql语句之后进行检查,检查不符合条件的话回滚 roll back 。after触发器只能在表上指定。Instead of :指定触发器时代替SQL语句执行的,其优先级高于触发语句的操作。例:为 student表建立触发器T1,当插入或更新表中的数据时,保证所操作的记录的sage值大于0。create trigger T1on studentafter insert,updateas begin declare sage int select sage = inserted.sage from inserted if(sage

    21、0) begin print 年龄错误 rollback transaction endendupdate studentset sage = 38where sno = 01insert into student(sno,sname,ssex,sage,sdept)values(2007011,张三,男,55,ma)为student表建立触发器T2,禁止删除编号为“0001”的学生。insert into student(sno,sname,ssex,sage,sdept)values(0001,傻大个,男,19,is)create trigger T2on studentafter del

    22、eteasbegin declare sno char(10) select sno = deleted.sno from deleted if(sno = 0001) begin print 禁止删除学号0001信息 rollback transaction endenddelete student where sno = 0001drop trigger T2第十章1事务。 是一系列的数据库操作,是数据库应用程序的基本逻辑单元。 是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单元。2事务的四个特性。 原子性:事务是数据库的逻辑工作单位,事务总包括的诸操作

    23、要么全做,要么全不做。 一致性:数据库只包含成功事务提交的结果,就说数据库处于一致性状态。 隔离性:一个事务的执行不能被其他事务干扰。即一个事务的内部操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。 持续性:指一个事务一旦提交,他对数据库中数据的改变就应该是永久性的。事务是恢复和并发控制的基本单位。3数据库恢复。 把数据库从错误状态恢复到某一已知的正确状态的功能。1. 运行事务非正常中断。2. 数据丢失。4故障种类。 运行事务非正常中断-恢复-事务撤销。 系统故障、介质故障、计算机病毒。5恢复实现技术。数据恢复的基本原理:冗余。 建立冗余数据最常用的技术是数据转储和

    24、登记日志文件。6 数据转储。 静态转储:是在系统中无运行事务时进行的转储操作。 动态转储:是指转储期间允许对数据库进行存取或修改。即转储和用户事务可以并发执行。 海量转储:每次转储全部数据库。 增量转储:指每次只转储上一次转储后更新过的数据。7.日志文件。 是用来记录事务对数据库的更新操作的文件。 在事务故障恢复和系统故障恢复必须用日志文件。 在动态转储方式中必须建立日志文件,后备副本和日志文件结合起来才能有效地恢复数据库。 在静态转储中也建立日志文件8登记日志文件(对数据库的操作记录)。 登记的次序严格按并发事务执行的时间次序。 必须先写日志文件,后写数据库。9事务故障的恢复。 恢复子系统应

    25、利用日志文件撤销此事务已对数据库进行的修改,系统自动进行。10系统故障恢复。 导致故障原因可能有两个:1. 未完成事务对数据库的更新可能已写入数据库。2. 已提交事务对数据库的更新可能还留在缓冲区没来得及写入数据库。恢复策略是 撤销故障发生时未完成的事物,重做已完成的事物。11介质故障的恢复。 数据库副本。第十一章 1 并发操作带来的数据不一致性。 并发操作破坏了事务的隔离性。 丢失修改:两个事务同时读入同一数据并修改,T2提交的结构破坏了T1提交的结果,导致T1的修改被丢失。 不可重复读:事务1读取数据后,事务2执行更新操作,使T1无法再现前一次读取结果。 读脏数据:事务1修改某一数据并将其

    26、写回磁盘,事务2读取同一数据后,T1由于某种原因被撤销,这时被T1修改过的数据恢复原值,T2读到的数据就与数据库中的数据不一致,则T2读到的数据就为脏数据,即不正确的数据。2.并发控制的主要技术。 封锁、时间戳、乐观控制法、多版本并发控制等。3. 封锁。 封锁就是事务T对某个数据对象操作之前,先向系统发出请求,对该数据对象进行加锁。加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其他事务不能更新此数据对象。4.封锁类型。 排他锁(写锁):若事务T对数据对象A加上X锁,则只允许T读取和修改A,其他任何事务都不能再对A加任何类型的锁,直到T释放A上的锁为止。保证了其他事务在T释放

    27、A上的锁之前不能再读取和修改A。 共享锁(读锁):若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁为止。保证了其他事务可以读A,但在T释放S锁之前不能对A做任何修改。5.封锁协议。 一级封锁协议:事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放。可防止丢失修改,保证事务T是可恢复的。 二级封锁协议:在一级封锁协议基础上增加事务T在读取数据R之前必须先对其加S锁,读完后即可释放S锁。二级封锁协议可以防止丢失修改和读“脏”数据 三级封锁协议:在一级封锁协议的基础上增加事务T在读取数据R之前必须先对其加S锁,直到事务结

    28、束才释放。三级封锁协议可防止丢失修改、读脏数据和不可重复读,容易造成比较多的死锁。6.活锁和死锁 活锁:有一个事务一直等待无法执行。 死锁:T1等待T2,T2等待T1。避免活锁:采用先来先服务的策略。预防死锁的方法:一次封锁法 、 顺序封锁法死锁的诊断:超时法 、 事务等待图法7.可串行化调度。 多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行这些事务时的结果相同。 可串行性是并发事务正确调度的准则。一个给定的并发调度,当且仅当它是可串行化的,才认为是正确调度。8.两段锁协议。 实现并发调度的可串行性,从而保证调度的正确性。9.所有事务必须分两个阶段对数据项加锁和解锁。 在对任

    29、何数据进行读、写操作之前,首先要申请并获得对该数据的封锁。 在释放一个封锁之后,事务不在申请和获得任何其他封锁。指事务分为两个阶段:一、获得封锁,事务可以申请获得任何数据项上的任何类型的锁,不能释放任何锁。二:释放封锁,事务可以释放任何数据项上的任何类型的锁,但是不能再申请任何锁。 事务遵守两段锁协议是可串行化调度的充分条件,而不是必要条件。若调度是遵守两段锁协议的,因此一定是一个可串行化调度。反之不然。应用题1.授权例题把对Student表和Course表的全部权限授予用户U2和U3 GRANT ALL PRIVILIGES ON TABLE Student, Course TO U2, U3;把对表SC的查询权限授予所有用户 GRANT SELECT ON TABLE SC TO PUBLIC把对表SC的INSERT权限授予U5用户,并允许他再将此权限授予其他用户 GRANT INSERT


    注意事项

    本文(数据库系统概论王珊第五版学习笔记.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开