1.在数据库中存储的是。A.数据B.数据模型C.数据以及数据之间的联系D.信息2.同一个关系模型的任两个元组值。A.不能全同B.可全同C.必须全同D.以上都不是3.子模式是。A.模式的副本B.模式的逻辑子集C.多个模式的集合D.以上三者都对4.在数据库三级模式结构中,描述数据库中全体逻辑结构和特性的是。A.外模式B.内模式C.存储模式D.模式5.SQL语言是语言。A.层次数据库B.网络数据库C.关系数据库D.非数据库CABDC•(1)模式模式也称逻辑模式或概念模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式实际上是数据库数据在逻辑级上的视图。一个数据库只有一个模式。定义模式时不仅要定义数据的逻辑结构,而且要定义数据之间的联系,定义与数据有关的安全性、完整性要求。•(2)外模式外模式也称用户模式,它是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。外模式通常是模式的子集。一个数据库可以有多个外模式。应用程序都是和外模式打交道的。外模式是保证数据库安全性的一个有力措施。每个用户只能看见和访问所对应的外模式中的数据,数据库中的其余数据对他们是不可见的。•(3)内模式内模式也称存储模式,一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。例如,记录的存储方式是顺序结构存储还是B树结构存储;索引按什么方式组织;数据是否压缩,是否加密;数据的存储记录结构有何规定等。6.关系模式中,满足2NF的模式。A.可能是1NFB.必定是1NFC.必定是3NFD.必定是BCNF7.当B属性函数依赖于A属性是,属性A对B的联系是。A.1对多B.多对1C.多对多D.以上都不是8.关系模式中各级模式之间的关系为。A.3NF﹤2NF﹤1NFB.3NF﹤1NF﹤2NFC.1NF﹤2NF﹤3NFD.2NF﹤1NF﹤3NF9.数据库中的封锁机制是的主要方法。A.完整性B.安全性C.并发控制D.恢复10.数据库系统得并发控制的主要方法是采用机制。A.拒绝B.改为串行C.封锁D.不加任何控制BBACC1.DBMS管理的是的数据。2.在一个关系中如果有这样一个属性存在,它的值能惟一地标示关系中的每一个元组,称这个属性为。3.若关系为1NF,且它的每一非主属性都不候选码,则该关系为3NF。4.用于数据库恢复的重要文件是。5.并发控制是对用户的加以控制和协调。1.结构化2.候选码3.部分依赖和传递依赖4.日志文件5.并发操作1.DBMS管理的是的数据。2.关系代数中,从两个关系中找出相同元组的运算称为运算。3.视图是一个虚表,它是从中导出的表。在数据库中,只存放视图的,不存放视图的。4.若关系为1NF,且它的每一非主属性都候选码,则该关系为2NF。5.关系数据库中基于数学上两类运算是和。6.E-R数据模型一般在数据库设计的阶段使用。7.候选码中的属性称为。结构化;交;一个或几个基本表;定义;视图对应的数据;不部分函数依赖于;关系代数;关系演算;概念设计;主属性已知数据库(见附录),对其进行下列操作1.查询“程菊”老师所授课程号(CNo)和课程名(CName)。(关系代数)2.查询性别为“男”的学生号(SNo)。(ALPHA)3.查询年龄大于21的男同学学号(SNo)和姓名(SName)。(SQL)4.查询选修“C语言”的学生姓名(SName)。(SQL)5.将所有的学生的年龄(Age)增加1。(SQL)Πcno,cname(σteacher=’程菊’(C))GETW(SNo):S.Sex=’男’Selectsno,snameFromsWheresex=’男’andage21;SelectsnameFroms,c,scWheres.sno=sc.snoandc.cno=sc.cnoandc.cname=’C语言’;UpdatesSetage=age+1;1.设有下列关系模式:学生关系S(学号,姓名,年龄,班级),选课关系SC(学号,课程号,成绩),用SQL语句查询“李林”选了而“王明”没有选的课程号。2.设有关系模式:学生关系S(学号,姓名,年龄,班级),选课关系SC(学号,课程号,成绩),检索没有选C1或C2课的学生的学号,要求用关系代数表达式表示。1.设有职工关系EMP(职工号,姓名,性别,工资,部门名称)。试用SQL语句创建一个工资总额超过20万元(含20万元)的各部门工资总额视图VSAL。2.设有职工关系EMP(职工号,姓名,性别,工资,部门名称)。职工“吴刚”从销售部调到人事部,请用SQL语句写出该操作。3.已知三个关系R(A,B,C)、S(A,D,E)、T(D,F),其中C、E为数值类型属性,试用SQL语言实现:将R、S、T三个关系按关联属性建立一个视图RST;对视图RST按属性A分组后,求属性C和E的平均值对视图RST按属性A分组后,求属性C和E的平均值数据库为:厂家S(SNO,SNAME,STATUS,CITY)产品P(PNO,PNAME,WEIGHT,COLOR)工程J(JNO,JNAME,CITY)供货SPJ(SNO,PNO,JNO,QTY)1.查询供应P1,P2两种产品的工程名。(关系代数)4.查询至少为J1,J2两个工程的提供产品的厂家名。(SQL)5.产品P2的颜色由“red”改为“white”。(SQL)设有商业销售记账数据库。一个顾客(顾客姓名,单位,电话号码)可以买多种商品,一种商品(商品名称,型号,单价)供应多个顾客。设完成如下设计:•根据语义设计E-R图,要求标出实体的属性和联系方式;•将E-R图转换为一组关系模型,并指出主码和外码;•判定得到的每一个关系模式为第几范式。AnIntroductiontoDatabaseSystem2020/2/24166.2.3范式范式是符合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求。满足不同程度要求的为不同范式。范式的种类:第一范式(1NF)第二范式(2NF)第三范式(3NF)BC范式(BCNF)第四范式(4NF)第五范式(5NF)AnIntroductiontoDatabaseSystem2020/2/2417说明:1.函数依赖不是指关系模式R的某个或某些关系实例满足的约束条件,而是指R的所有关系实例均要满足的约束条件。2.函数依赖是语义范畴的概念。只能根据数据的语义来确定函数依赖。例如“姓名→年龄”这个函数依赖只有在不允许有同名人的条件下成立3.数据库设计者可以对现实世界作强制的规定。例如规定不允许同名人出现,函数依赖“姓名→年龄”成立。所插入的元组必须满足规定的函数依赖,若发现有同名人存在,则拒绝装入该元组。AnIntroductiontoDatabaseSystem2020/2/2418完全函数依赖与部分函数依赖(续)例:在关系SC(Sno,Cno,Grade)中,由于:Sno→Grade,Cno→Grade,因此:(Sno,Cno)fGradeAnIntroductiontoDatabaseSystem2020/2/2419四、传递函数依赖定义6.3在关系模式R(U)中,如果X→Y,Y→Z,且YX,Y→X,则称Z传递函数依赖于X。注:如果Y→X,即X←→Y,则Z直接依赖于X。例:在关系Std(Sno,Sdept,Sloc)中,有:Sno→Sdept,Sdept→SlocSloc传递函数依赖于SnoAnIntroductiontoDatabaseSystem2020/2/24206.2.2码定义6.4设K为关系模式RU,F中的属性或属性组合。若KfU,则K称为R的一个侯选码(CandidateKey)。若关系模式R有多个候选码,则选定其中的一个做为主码(Primarykey)。主属性与非主属性ALLKEYAnIntroductiontoDatabaseSystem2020/2/2421外部码定义6.5关系模式R中属性或属性组X并非R的码,但X是另一个关系模式的码,则称X是R的外部码(Foreignkey)也称外码。主码又和外部码一起提供了表示关系间联系的手段。AnIntroductiontoDatabaseSystem2020/2/24226.2.3范式各种范式之间存在联系:某一关系模式R为第n范式,可简记为R∈nNF。NF5NF4BCNFNF3NF2NF1AnIntroductiontoDatabaseSystem2020/2/24236.2.42NF1NF的定义如果一个关系模式R的所有属性都是不可分的基本数据项,则R∈1NF。第一范式是对关系模式的最起码的要求。不满足第一范式的数据库模式不能称为关系数据库。但是满足第一范式的关系模式并不一定是一个好的关系模式。AnIntroductiontoDatabaseSystem2020/2/24242NF例:关系模式SLC(Sno,Sdept,Sloc,Cno,Grade)Sloc为学生住处,假设每个系的学生住在同一个地方。函数依赖包括:(Sno,Cno)fGradeSno→Sdept(Sno,Cno)PSdeptSno→Sloc(Sno,Cno)PSlocSdept→SlocAnIntroductiontoDatabaseSystem2020/2/24252NFSLC的码为(Sno,Cno)SLC满足第一范式。非主属性Sdept和Sloc部分函数依赖于码(Sno,Cno)SnoCnoGradeSdeptSlocSLCAnIntroductiontoDatabaseSystem2020/2/2426SLC不是一个好的关系模式(1)插入异常假设Sno=95102,Sdept=IS,Sloc=N的学生还未选课,因课程号是主属性,因此该学生的信息无法插入SLC。(2)删除异常假定某个学生本来只选修了3号课程这一门课。现在因身体不适,他连3号课程也不选修了。因课程号是主属性,此操作将导致该学生信息的整个元组都要删除。AnIntroductiontoDatabaseSystem2020/2/2427SLC不是一个好的关系模式(3)数据冗余度大如果一个学生选修了10门课程,那么他的Sdept和Sloc值就要重复存储了10次。(4)修改复杂例如学生转系,在修改此学生元组的Sdept值的同时,还可能需要修改住处(Sloc)。如果这个学生选修了K门课,则必须无遗漏地修改K个元组中全部Sdept、Sloc信息。AnIntroductiontoDatabaseSystem2020/2/24282NF原因Sdept、Sloc部分函数依赖于码。解决方法SLC分解为两个关系模式,以消除这些部分函数依赖SC(Sno,Cno,Grade)SL(Sno,Sdept,Sloc)AnIntroductiontoDatabaseSystem2020/2/24292NF2NF的定义定义5.6若关系模式R∈1NF,并且每一个非主属性都完全函数依赖于R的码,则R∈2NF。例:SLC(Sno,Sdept,Sloc,Cno,Grade)∈1NFSLC(Sno,Sdept,Sloc,Cno,Grade)∈2NFSC(Sno,Cno,Grade)∈2NFSL(Sno,Sdept,Sloc)∈2NFAnIntroductiontoDatabaseSystem2020/2/2430第二范式(续)采用投影分解法将一个1NF的关系分解为多个2NF的关系,可以在一定程度上减轻原1NF关系中存在的插入异常、删除异常、数据冗余度大、修改复杂等问题。将一个1NF关系分解为多个2NF的关系,并不能完全消除关系模式中的各种异常情况和数据冗余。AnIntroductiontoDatabaseSystem2020/2/24316.2.53NF例:2NF关系模式SL(Sno,Sdept,Sloc)中函数依赖:Sno→SdeptSdept→SlocSno→SlocSloc传递函数依赖于Sno,