还剩18页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
《数据库系统概论》王珊第五版★第一章绪论本章内容数据库系统概述、数据模型、数据库系统结构本章主要考点数据、数据库、★数据库管理系统的概念、概念模型、图、三种数据模型、数据库的三级*ER模式结构、试述数据、数据库、数据库系统、数据库管理系统的概念1数据:描述事物的符号记录称为数据1Data数据库简称数据库是长期储存在计算机内的、有组织的、可共享的数据集合2Data Base,DB:数据库系统简称:数据库系统是指在计算机系统中引入数据库后的系3Data BaseSystem,DBS统构成,一般由数据库、数据库管理系统及其开发工具、应用系统、数据库管理员构成数据库管理系统简称:数据库管理系统是位于用户与操作系统之间的一层数据4DataBase ManagementSystem,DBMS管理软件,用于科学地组织和存储数据、高效地获取和维护数据、对于、、的关系,下列哪一种描述是正确的2DB DBS DBMS BA、包括、、包括、DB DBS DBMS BDBSDBDBMS、包括、、以上都不对C DBMSDBSDBD、概念模型中的术语实体、属性、码、域、实体型、实体集3实体客观存在并可以相互区分的事物叫实体属性实体所具有的某一特性,一个实体可由若干个属性来刻画码:惟一标识实体的属性集称为码域域是一组具有相同数据类型的值的集合实体型具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,称为实体型实体集同型实、体的集合称为实体集.、目前数据库领域中最常用的逻辑数据模型有层次模型、网状模型、关系模型等
4、数据库管理系统的主要功能有哪些?冷叶顷5数据库定义功能数据存取功能数据库运行管理数据库的建立和维护功能.1234★、实体联系图图6E—R实体型用矩形表示,矩形框内写明实体名;属性用椭圆形表示,并用无向边将其与相应的实体连接起来;联系用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型或或1:11:n m:n▲例假设教学管理规定
①一个学生可选修多门课,一门课有若干学生选修;
②一个教师可讲授多门课,一门课只有一个教师讲授;
③一个学生选修一门课,仅有一个成绩.学生的属性有学号、学生姓名;教师的属性有教师编号,教师姓名;课程的属性有课程号、课程名要求根据上述语义画出图,要求在图中画出实体的属性并注明联系的类型;ER解根据以上规则画出对于的图如下E-R用语句表达下列操作SQL检索选修课程名称为的学生的学号与姓名1“MATHS”检索至少学习了课程号为和的学生的学号2“C1”“C2”检索年龄在到之间含和的女生的学号、姓名和年龄318201820检索平均成绩超过分的学生学号和平均成绩480检索选修了全部课程的学生姓名5检索选修了三门课以上的学生的姓名6解1SELECT SNAME,S#FROM S,SC,CWHERE SoS#=SC.S#AND CoC#=SCo C#AND CNAME=MATHS2SELECT S#FROM SCWHERECNO=Cl ANDS#IN SELECT S#FROM SCWHERECNO=C23SELECT S#,SNAME,AGEFROM SWHEREAGE BETWEEN18AND204SELECT S#,AVG GRADEFROM SCGROUP BY S#HAVI NGAVG GRADE805SELECT SNAMEFROMSWHERE NOT EX I STSSELECT*FROM CWHERENOTEXI STSSELECT*FROM SCWHERES#=S.S#AND C#=C.C#6SELECT SNAMEFROMS,SCWHERE SoS#=SCo S#GROUP BYSNAME◎第四章数据库安全性*〉HAVI NGCOUNT3本章内容:计算机安全性概述、数据库安全性控制、审计、数据加密本章主要考点基本概念、数据库安全性控制、下面哪个不是数据库系统必须提供的数据控制功能®.1安全性可移植性完整性并发控制A.B.C.D.、数据库的如_是指数据的正确性和相容性2安全性完整性并发控制恢复A.B.C.D.、在数据系统中,对存取权限的定义称为岂或3命令授权定义审计A.B.C.D.、数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的()4D.可靠性一致性完整性安全性A.B.C.D.、保护数据安全性的一般方法是设置用户标识和存取权限控制.
5、安全性控制的一般方法有用户标识鉴定、存取控制、审计、数据加密和视图的保护五级安全措施.6★第六章关系数据理论(冷叶顷)本章内容:规范化、数据依赖的公里系统、模式分解本章主要考点函数依赖、多值依赖的概念、★范式判定、公理系统Armstrong、设计性能较优的关系模式称为规范化,规范化主要的理论依据是()1A.关系规范化理论关系运算理论关系代数理论数理逻辑A.B.C.D,、规范化过程主要为克服数据库逻辑结构中的插入异常,删除异常以及的缺陷()2C数据的不一致性结构不合理冗余度大数据丢失A,B.C,D.、当关系模式已属于下列说法中®_是正确的()3R A,B3NF,它一定消除了插入和删除异常仍存在一定的插入和删除异常A.B.一定属于和都是C.BCNF D.A B、在关系中,任何二元关系模式的最高范式必定是4DB
3.A.1NF B.2NF C.3NF D.BCNF、在关系模式中,若其函数依赖集中所有候选关键字都是决定因素,则最高范式是5R RA.2NF B.3NF C.4NF D.BCNF、根据关系数据库规范化理论,关系数据库中的关系要满足第一范式下面“部门”关系中,因哪个属性而使它不6满足第一范式岂改部门(部门号,部门名,部门成员,部门总经理)部门总经理部门成员部门名部门号A.B,C.D.
7、函数依赖的概念函数依赖的定义设是一个属性集上的关系模式,和是的子集若对于的任意一个可能的关系()()R UU X Y UR U中不可能存在两个元组在上的属性值相等,而在上的属性值不等,则称函数确定或函数依赖于记,r,r XY“XY”“Y X”作即只要上的属性值相等,上的值一定相等XTY XY・平凡的函数依赖在关系模式中,对于的子集和()R UU XY,如果但则称是平凡的函数依赖XTY,Y IX,XTY・非平凡的函数依赖在关系模式中,对于的子集和若但则称是平凡的函数依赖R UU XY,XTY,YVX,XTY例在关系中,SC Sno,Cno,Grade非平凡函数依赖Sno,Cno TGrade平凡函数依赖Sno,Cno TSnoSno,Cno—►Cno・部分函数依赖若但不完全依赖于则称对部分函数依赖记作XTY,Y X,Y X X3Y・完全函数依赖在中,如果并且对于的任何一个真子集,,都有则称对完全函数依赖.记作RU XTY,X XXrY,Y XX匚丫1例学校教务的数据库学生的学号、所在系系主任姓名、课程号成绩Sno SdeptMname Cno GradeU={Sno,Sdept,Mname,Cno,Grade}是完全函数依赖,Sno,Cno-Grade是部分函数依赖Sno,Cno Sdept因为成立,且是的真子集Sno TSdept Sno Sno,Sanme・传递函数依赖在中,如果不属于则称对传递函数依赖RU XTY,Y QX,YZX,YTZ,Z Y,Z X例在关系中,有Std Sno,Sdept,Mname传递Sno TSdept,Sdept TMname Mname函数依赖于Sno必INF D2D3Nb DBCN卜n4NF D5NF、第一范式8〜BCNF第一范式若关系模式的每一个分量是不可再分的数据项,则关系模式属于第一范式1NF:R R第二范式若关系模式且每一个非主属性完全函数依赖于码,则关系模式即消除了非主属性2NF:RE1NF,Re2NF1NF对码的部分函数依赖则成为2NF.例关系模式S—L-CSno,Sdept,SIoc,Cno,Grade函数依赖包括匚Sno,CnoGrade为学生住处,假设每个系的学生住在同一个地方Sloe二Sno TSdept Sno,Cno SdeptSnoT SIoc二Sno,Cno SIocS-L-C虚线表示部分函数依赖Sdept TSIoc由于非主属性和并不完全函数依赖于码所以不是解决方法Sdept SloeSno,Cno,2NFGrade分解为两个关系模式,以消除这些部分函数依赖,这就属于了S—L—C2NF SCSno,Cno,Grade S-L Sno,Sdept,Sloe第三范式关系模式中若不存在这样的码、属性组及非主属性不是的子3NF:R U,F XY ZZ Y集使得成立,则称X TY,YZX,YTZ R U,F£3NF每一个非主属性既不部分依赖于码有人不传递依赖于码例上例中,在中存在非主属性对码的传递函数依赖,所以不属于S—L3NF解决方法采用投影分解法,把分解为两个关系模式,以消除传递函数依赖S-L码为码为S—D Sno,SdeptSnoD—L Sdept,SIoc Sdept关系模式若且不是的子集时,必含有码,则BCNF:RU,FE1NF XTYY XX即每一个决定属性因素都包含码RU,F EBCNF性质若BCNF RWBCNF
①所有非主属性对每一个码都是完全函数依赖
②所有的主属性对每一个不包含它的码,也是完全函数依赖
③没有任何属性完全函数依赖于非码的任何一组属性例在关系模式中,表示学生,表示教师,表示课程STJ S,T,J ST J每一教师只教一门课.每门课由若干教师教,某一学生选定某门课,就确定了一个固定的教师某个学生选修某个教师的课就确定了所选课的名称函数依赖和都是候选码S,JTT,S,T TJ,TTJ S,J S,T和£,都可以作为候选码,、、都是主属性,没有任何非主属性对码传递依赖或部分依赖.但不STJe3NF5,1TST JSTJ是因为是决定因素,不包含码解决方法将分解为二个关系模式BCNF,T TSTJ STS,T eBCNF,TJ T,J eBCNF□□□-E]关于第四范式和多值依赖的内容,大家按书复习★例题设有如下关系R课程名教师名教师地址刘爽英C1D1乔志伟C2D2于得水C3D2井超C4D2它为第几范式?为什么?1是否存在删除操作异常?若存在,则说明是在什么情况下发生的?2将它分解为高一级范式,分解后的关系是如何解决分解前可能存在的删除操作异常问题3解它是因为的候选关键字为“课程名”依赖关系课程名T教师名,教师名T课程名,教师名T教12NF R师地址,所以课程名-教师地址即存在非主属性“教师地址”对候选关键字课程名的传递函数,因此不是►R3NF但因为不存在非主属性对候选关键字的部分函数依赖,所以是R2NF存在当删除某门课程时,会删除不该删除的教师的有关信息2分解为高一级范式如图所示3教师名教师地址课程号教师名刘爽英刘爽英D1C1乔志伟乔志伟D2C2于得水于得水D2C3井超井超D2C4课程名,教师名教师名,教师地址R1R2R1R2分解后,若删除课程数据时,仅对关系操作,教师地址信息在关系中仍然保留,不会丢失教师方面的信R1R2息★第七章数据库设计冷叶顷本章内容:数据库设计概述、数据库设计的个步骤6本章主要考点★数据库设计的个步骤、图合并出现的冲突与解决方法、图,转换成关系模式6ER^ER★、简述数据库设计的主要步骤1需求分析概念结构设计逻辑结构设计数据库物理设计1234数据库实施数据库运行和维护
56、图合并汇总会出现什么冲突?怎么解决冲突?2ER
①出现的冲突有属性冲突、命名冲突、结构冲突
②属性冲突和命名冲突通常用讨论、协商等行政手段解决结构冲突通常根据应用语义对实体联系的类型进行综合或调整、在数据库设计中,用图来描述信息结构但不涉及信息在计算机中的表示,它是数据库设计的阶段3E-R B需求分析概念设计逻辑设计物理设计A.B.C.D.、在关系数据库设计中,设计关系模式是3的任务4需求分析阶段概念设计阶段逻辑设计阶段物理设计阶段A.B.C.D.、数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作是5Bo建立库结构扩充功能加载数据系统调试A.B.C.D.、从模型关系向关系模型转换时,一个联系转换为关系模型时,该关系模式的关键字是岂口6E—R M N端实体的关键字端实体的关键字A.M B.N端实体关键字与端实体关键字组合重新选取其他属性C.MND.、当局部图合并成全局图时可能出现冲突,不属于合并冲突的是()7E—R E—R B属性冲突语法冲突结构冲突命名冲突A.B.C.D.、数据流程图是用于描述结构化方法中工»阶段的工具()8DFD可行性分析详细设计需求分析程序编码A.B.C.D.、设有商店和顾客两个实体,“商店”有属性商店编号、商店名、地址、电话,“顾客”有属性顾客编号、姓名、★9地址、年龄、性别假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每次去商店购物有一个消费金额和日期试画出图,并注明属性和联系,并将其转换为关系模型.E—R解图E-R关系模型顾客(顾客编号,姓名,地址,年龄,性别)商店(商店编号,商店名,地址,电话)购物(顾客编号,商店名称,日期,消费金额)◎第十章数据库恢复技术(冷叶顷)本章内容:事务的基本概念、故障的种类、恢复策略本章主要考点基本概念、恢复策略、©是的基本单位,它是用户定义的一组逻辑一致的程序序列1DBMS程序命令事务文件A.B,C.D.、事务的原子性是指()2A事务中包括的所有操作要么都做,要么都不做A.事务一旦提交,对数据库的改变是永久的B.一个事务内部的操作及使用的数据对并发的其他事务是隔离的C.事务必须是使数据库从一个一致性状态变到另一个一致性状态D.、若数据库中只包含成功事务提交的结果,则此数据库就称为处于岂外状态.3安全一致不安全不一致、若系统在运行过程中,由于某种原因,造A.B.C.D.4成系统停止运行,致使事务在执行过程中以非控制方式终止,这事务故障系统故障介质故障运行故障A.B.C.D.时内存中的信息丢失,而存储在外存上的数据未受影响,这种情况称为()B.日志文件数据库缓冲区B.C.D.、用于数据库恢复的重要文件是6(C)o数据库文件索引文件日志文件备注文件A,B.C.D.、()用来记录对数据库中数据进行的每一次更新操作5B、数据库恢复的基础是利用转储的冗余数据这些转储的冗余数据包括7数据字典、应用程序、审计档案、数据库后备副本A.数据字典、应用程序、日志文件、审计档案B.日志文件、数据库后备副本数据字典、应用程序、数据库后备副本C.D.、事务的特性为原子性、隔离性、一致性、持续性
8、数据库系统中的故障包括事务内部的故障、系统故障、介质故障、计算机病毒.9◎第十一章并发控制❖本章内容并发控制的概述、封锁、活锁和死锁、两段锁协议本章主要考点封锁中读锁和写锁的概念、活锁和死锁的概念、两段锁协议、设有两个事务、其并发操1T1T2,作如右图所示,下面评价正确的是®_.T1T2该操作不存在问题该操作丢失修改A.B.
①读A=10该操作不能重复读该操作读“脏”数据C.D.
②、解决并发操作带来的数据不一致性总是普遍采用
④读2A=10二写回
③A A-5封锁恢复存取控制协商A.B.C,D.
④、若事务对数据已经加锁,则其他事务对数据3T R X RQ2写回A=A—8可以加锁不能加锁不能加锁可以加锁A.S XB,S X可以加锁也可以加锁不能加任何锁C.S XD,、并发操作会带来哪些数据不一致性34丢失修改、不可重复读、脏读、死锁不可重复读、脏读、死锁A.B.丢失修改、脏读、死锁丢失修改、不可重复读、脏读C.D.、什么是封锁?5封锁就是事务在对某个数据对象操作之前,先向系统发出请求,对其加锁T、什么是活锁?什么是死锁?6活锁事务封锁了数据事务又请求封锁于是等待也请求封锁当释放了上的封锁之后系统T1R,T2R,T2T3R,T1R首先批准了的请求,仍然等待又请求封锁当释放了上的封锁之后系统又批准了的请求……T3T2T4R,T3R T4T2有可能永远等待,这就是活锁的情形避免方法采用先来先服务的策略死锁事务封锁了数据封锁了数据又请求封锁因已封锁了于是等待释放上的锁,T1R1,T2R2,T1R2,T2R2,T1T2R2接着又申请封锁因已封锁了也只能等待释放上的锁,这样在等待而又在等待T2R1,T1R1,T2T1R1T1T2,T2T1,T1和两个事务永远不能结束,形成死锁T
27、预防死锁的方法有一次性封锁法、顺序封锁法、死锁的诊断与解除方法有超时法、等待图法
8、试述两段锁协议的概念9所谓两段锁协议是指所有事务必须分两个阶段对数据项加锁和解锁获得封锁在对任何数据进行读、写操作之前,事务首先要获得对该数据的封锁释放封锁在释放一个封锁之后,事务不再申请和获得任何其他封锁若并发事务都遵守两段锁协议,则对这些事务的任何并发调度策略都是可串行化的若并发事务的一个调度是可串行化的,不一定所有事务都符合两段锁协议
7、数据库系统的三级模式结构:立■式・大外模式亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示.模式亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图模式描述的是数据的全局逻辑结构外模式涉及的是数据的局部逻辑结构,通常是模式的子集内模式亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述数据库系统在这三级模式之间提供了两层映像外模式/模式映像和模式/内模式映像这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性、对数据库中进行增加记录类型或增加数据项,通过调整下列哪一级映像,可以使应用程序尽可能保持不8变,便达到了哪一种数据的独立性维、外模式/模式映像,逻辑数据独立性A、外模式/模式映像,物理数据独立性B、模式/内模式映像,逻辑数据独立性C、模式/内模式映像,物理数据独立性D、数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是()9D外模式内模式存储模式模式A.B.C.D.、层次模型不能直接表示310关系关系关系和关系A.1:1B.1:m C.m:n D.1:11:m★第二章关系数据库(重点)本章内容关系数据结构及形式化定义、关系操作、关系的完整性、关系代数本章主要考点概念、关系的完整性、★★关系代数、关系数据库管理系统应能实现的专门关系运算包括岂改1排序、索引、统选择、投影、连接关联、更新、排序显示、打印、制表A.B.C.D.、自然连接是构成新关系的有效方法一般情况下,当对关系和使用自然连接叱要求和含有一个或多个共2R SR S有的()Do元组行记录属性A.B.C.D.、关系运算中花费时间可能最长的运算是岂出3投影选择笛卡尔积除A,B.C.D.、关系模式的任何属性岂及4不可再分可再分命名在该关系模式中可以不惟一以上都不是A.B.C.D.、在关系代数运算中,五种基本运算为(50并、差、选择、投影、自然连接并、差、交、选择、投影A.B.并、差、选择、投影、乘积并、差、交、选择、乘积C.D.、要求学生的年龄在至岁之间,是关系模型的哪一种完整性规则©61540参照完整性实体完整性用户定义的完整性规则以上都不是A.B.C.D.、关系的元数为关系的元数是则可以等价于下列哪一种汽鱼7R5,S4,Rw/S23A.s23(RXS)B.S27(RXS)C.RW SD.S62(RXS)、关系的三类完整性约束8实体完整性规则若属性是基本关系的主属性,则属性不能取空值A RA参照完整性规则若属性(或属性组)是基本关系的外码它与基本关系的主码相对应(基本F R S Ks关系和不一定是不同的关系),则对于中每个元组在上的值必须为R SR F■或者取空值的每个属性值均为空值)(F■或者等于中某个元组的主码值S用户定义的完整性针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求运算符含义运算符含义运算符含义运算符含义专门的关选择逻辑运算非集并比j大于0-1系运算符符合-差较》大于等于投影A与运n交®小于连接V或X算X笛卡尔积小于等于除符—等于不等于★★、关系代数(冷叶顷)9仍为目关系,由属于或属于的元组组成()1RUS nR S仍为目关系,由属于而不属于的所有元组组成2R—S nR S仍为目关系,由既属于又属于的元组组成()3RAS nR S元组,行个元组k1Xk2选择5选择运算符的含义在关系中选择满足给定条件的诸元组真}R OFR={t It RAFt=选择条件,是一个逻辑表达式F笛卡尔积列列元组的集合,元组的前列是关系的一个元组,后列是关系的一个4RXS n+m nR mS例如查询信息系系全体学生StudentIS asdept=is投影6投影运算符的含义从中选择出若干属性列组成新的关系Rn R={t[A]|t R}是中的属性列A AR例如查询学生的姓名和所在系,即求关系上学生姓名和所在系两个属性上的投影StudentTT StudentSname,Sdept⑺连接连接运算的含义从两个关系的笛卡尔积中选取属性间满足一定条件的元组,提秋、⑷分为等值连接、一般连接、自然连接S={8Q8]}例如关系和关系如下所示:R S一般连接与的结果如下:等值连接尺的结果如下:R fx SRxSRB=S.BA R.B CS.B EAR.B CS.B E卜5坛74530b】5仇10%6%7a\殳6h75b6心102b8瓦102a1仇8h102仇8/八2自然连接尺的结果如下:X ScAB E53*267%A810/by82除8给定关系和其中为属性组中的与中的可以有不同的属性名,但必须出自相同的域集RX,YS Y,Z,X,Y,Z.R YSYR与的除运算得到一个新的关系是中满足下列条件的元组在属性列上的投影元组在上分量值的象集S PX,P RXXx包含在上投影的集合,记作Yx SY{匕匕R4-S=[X]|RAn SY}Y xBC D4bI Q山bi Ci区、c dIbc例如设关系、分别为下图的和的结果为图RSa b,R-S c★例设有一个数据库,包括四个关系模式SPJ S,P,J,SPJ;SSNO,SNAME,STATUS,CITY;PPNO,PNAME,COLOR,WEIGHTJJNO,JNAME,CITY;SPJ SNO,PNO,JNO,QTY;供应商表由供应商号码、供应商姓名、供应商状态、供应商所在城市组成;零件表S SNOSNAME STATUSCITYR+S由零件代码、零件名、颜色、重量组成;工程项目表由工程项目代码、工程项P PNOPNAME COLORWEIGHT JJNO目名、工程项目所在城市组成;供应情况表由供应商代码、零件代码、工程项目代码、JNAME CITYSPJ SNOPNO JNO供应数量组成,表示某供应商供应某种零件给某工程项目的数量为QTY QTY试用关系代数完成如下查询:求供应工程零件的供应商号码;1J1SNO求供应工程零件的供应商号码;2J1P1SNO求供应工程零件为红色的供应商号码;3J1SNO求没有使用天津供应商生产的红色零件的工程号4JNO;求至少用了供应商所供应的全部零件的工程号5S1JNO解二nSnoIoJno4jr SPJ求供应工程零件的供应商号码1J1SNO求供应工程零件的供应商号码2J1P1SNOCJJno=*jrAPno=P1nSno SPJ求供应工程零件为红色的供应商号码3J1SNO红或P w/SPJnSnooJno=*J1*oCOLOR=,红,TISno°Jno=,J1SPJ MoCOLOR=P求没有使用天津供应商生产的红色零件的工程号4JNO:天津红,或SPJ—Sw SPJwPTTJno TIJNO°city=AColor=,天津,”红,求至少用了供应商所供应的全部零件的工程号TIJnoSPJ-TIJNO cityS WSPJ WO ColorP5S1JNO,n,SPJ TISPJJno PnoPno Sno=*S1★第三章关系数据库标准语言(重点)SQL本章内容概述、数据定义、数据查询、数据更新、视图SQL本章主要考点基本概念、★★数据查询的基本语句操作、数据更新语句、语言是语言.()1SQL C层次数据库网络数据库关系数据库非数据库A.B.C.D.、语言具有两种使用方式,分别称为交互式和2SQL SQL提示式多用户嵌入式解释式A.SQL B.SQL C.SQL D.SQL、假定学生关系是课程关系是学生选课关系是3S(S#,SNAME,SEX,AGE),C(C#,CNAME,TEACHER),SC(S要查找选修课程的“女”学生姓名,将涉及到关系岂边)#,C#,GRADE“COMPUTER”oA.S B.SC,C C.S,SC D,S,C,SC、如下面的数据库的表中,若职工表的主关键字是职工号,部门表的主关键字是部门号,操作®不能执行4SQL从职工表中删除行(‘王芳,,)A.‘025‘03,720将行(‘乔兴,插入到职工表中)B,005,:‘04’,750将职工号为,的工资改为C.‘001’700将职工号为,的部门号改为D.038‘
03、在语言中,用来测试一个集合里是否有重复元组存在,使用下列哪一个关键字岂立5SQLA.UNIQUE B.DISTINCT C.EXISTS D.NOT IN★★、数据查询语句(冷叶顷)6SQL语句格式SELECT<目标列表达式〉[,<目标列表达式>]…SELECT[ALL IDISTINCT]〈表名或视图名〉[,〈表名或视图名>]…FROM〈条件表达式)][WHERE〈列名〈条件表达式〉]]>[GROUP BY1[HAVING〈列名〉(注语句中不区分大小写)[ORDER BY2[ASC IDESC]];SQL
①单表查询选择表中的若干列()1查询指定列例查询全体学生的学号与姓名SELECT Sno,SnameFROM Student;.查询所有列(将〈目标列表达式〉指定为*).例查询全体学生的详细记录SELECT*FROM Student;,查询结果计算的值例查全体学生的姓名及其出生年份/*假定当年的年份为年,减去年龄即得出生年份*/SELECT Sname,2012-Sage2012FROM Student;()选择表中的若干元组2取消取值重复的行(指定关键词,去掉表中重复的行)DISTINCT例查询选修了课程的学生号码(使用关键词取消了重复学号的行)SELECT DISTINCTSno DISTINCTFROMSC;查询满足条件的行语句)(WHERE查询条件比较=,!=,,!,!;NOT+上述比较运算符确定范围BETWEEN AND,NOT BETWEENAND,确定集合IN NOTIN字符匹配LIKE,NOT LIKE多重条件(逻辑运算)AND,OR,NOT空值IS NULL,IS NOTNULL例查询计算机科学系全体学生的名单(比较)SELECT SnameFROM Student WHERE Sdept=CS;例查询年龄在岁(包括岁和岁)之间的学生的姓名、系别和年龄(确定范围)20〜232023SELECTSname,Sdept,Sage FROM Student WHERE Sage BETWEEN20AND23;例查询信息系、数学系和计算机科学系学生的姓名和性别(确是集合)()()()IS MACS SELECT();Sname,Ssex FROM StudentWHERE Sdept INIS,MA,CS例查询学号为的学生的详细情况(字符匹配)200215121SELECT*FROM Student;WHERE SnoLIKE200215121’例某些学生选修课程后没有参加考试,所以有选课记录,但没有考试成绩查询缺少成绩的学生的学号和相应的课程号.(空值)/*不能用二SELECT Sno,Cno FROMSC WHEREGrade ISNULL代替IS*/例查询计算机系年龄在岁以下的学生姓名(多重条件)20SELECT SnameFROM StudentWHERE Sdept=CS ANDSage20;()子句3ORDER BY可以按一个或多个属性列排序升序降序缺省值为升序例查询选修了号课程;;ASC DESC3的学生的学号及其成绩,查询结果按分数降序排列.SELECT Sno,Grade FROMSC WHERE Cno=3ORDER BYGrade DESC;聚集函数4统计元组个数COUNT[DI STINCT IALL]*统计一列中值的个数<列名〉COUNT[DISTINCT IALL]<列名计算一列值的总和SUM[DI STINCT|ALL]<列名计算一列值的平均值AVG[DISTINCT IALL]〈列名〉求一列中的最大值MAX[DI STI NCT|ALL]〈列名〉MIN[DISTINCT IALL]求一列中的最小值例计算号课程的学生平均成绩1SELECT AVGGradeFROM SC二WHERECn1;
②多表查询等值查询1例查询每个学生及其选修课程的情况FROM StudentWHERE SageANYSELECT Studento*,SC.*FROM Student,SCWHERE Student.Sno=SC.Sno;AND Sdept嵌套查询2带有谓词的子查询IN例查询与“刘晨”在同一个系学习的学生SELECT Sno,Sname,SdeptFROM StudentWHERE Sdept IN,刘晨;SELECT SdeptFROM StudentWHERE Sname=带有比较运算符的子查询当内查询的结果是一个值时,可以用二代替例查询与“刘晨”在同一个系学习的IN学生SELECT Sno,Sname,SdeptFROM StudentWHERE Sdept=,刘晨’;SELECT SdeptFROM StudentWHERE Sname=带有或谓词的子查询ANY ALLANY大于子查询结果中的某个值ALL大于子查询结果中的所有值ANY小于子查询结果中的某个值ALL小于子查询结果中的所有值二ANY大于等于子查询结果中的某个值=ALL大于等于子查询结果中的所有值=ANY小于等于子查询结果中的某个值=ALL小于等于子查询结果中的所有值=ANY等于子查询结果中的某个值=ALL等于子查询结果中的所有值通常没有实际意义匕或ANY不等于乎查询结果中的某个值匕或ALL不等于子查询结果中的任何一个值例查询其他系中比计算机科学某一学生年龄小的学生姓名和年龄SELECT Sname,SageSELECT SageFROM StudentWHERESdept=CS/*这句是父查询块中的条件*/带有谓词的子查询CS1;EXISTS相当于存在量词三,带有谓词的子查询不返回任何数据,只产生逻辑真值或逻辑假值EXISTS“true”“false”.例查询所有选修了号课程的学生姓名1SELECT SnameFROM StudentWHERE EXISTSSELECT*FROMSC二WHERE SnoStudent SnoAND Cno=1;()集合查询(冷叶顷)3集合操作的种类并操作交操作差操作例查询计算机科学系的学生及年龄不大于UNION,INTERSECT,EXCEPT19岁的学生(并)SELECT*FROM StudentWHERESdept=TS UNIONSELECT*FROM StudentWHERE Sage=19;例查询计算机科学系的学生与年龄不大于岁的学生(交)19SELECT*FROM StudentWHERESdept=CS INTERSECTSELECT*FROMStudentWHERESage=19例查询计算机科学系的学生与年龄不大于岁的学生.(差)19SELECT*FROMStudentWHERESdept=CS EXCEPTSELECT*FROMStudentWHERESage=19;★例题设学生课程数据库中有三个关系学生关系学习关系课程()()S S#,SNAME,AGE,SEX SCS#,C#,GRADE关系()C C#,CNAME其中(学号)、(课程号)、(姓名)、(年龄)、(性别)、(成绩)、(课S#C#SNAME AGESEX GRADECNAME程名)。