已阅读5页,还剩28页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库系统概论习题集第一章绪论一、选择题1DBS是采用了数据库技术的计算机系统,DBS是一个集合体,包含数据库、计算机硬件、软件和(C)。A系统分析员B程序员C数据库管理员D操作员2数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是(A)。ADBS包括DB和DBMSBDBMS包括DB和DBSCDB包括DBS和DBMSDDBS就是DB,也就是DBMS3下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是(D)。I人工管理阶段II文件系统阶段III数据库阶段AI和IIB只有IICII和IIID只有I4下列四项中,不属于数据库系统特点的是(C)。A数据共享B数据完整性C数据冗余度高D数据独立性高5数据库系统的数据独立性体现在(B)。A不会因为数据的变化而影响到应用程序B不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序C不会因为存储策略的变化而影响存储结构D不会因为某些存储结构的变化而影响其他的存储结构6描述数据库全体数据的全局逻辑结构和特性的是(A)。A模式B内模式C外模式D用户模式7要保证数据库的数据独立性,需要修改的是(C)。A模式与外模式B模式与内模式C三层之间的两种映射D三层模式8要保证数据库的逻辑数据独立性,需要修改的是(A)。A模式与外模式的映射B模式与内模式之间的映射C模式D三层模式9用户或应用程序看到的那部分局部逻辑结构和特征的描述是(C),它是模式的逻辑子集。A模式B物理模式C子模式D内模式10下述(D)不是DBA数据库管理员的职责。A完整性约束说明B定义数据库模式C数据库安全D数据库管理系统设计选择题答案1C2A3D4C5B6A7C8A9C10D二、简答题试述数据、数据库、数据库系统、数据库管理系统的概念。数据描述事物的符号记录称为数据。数据的种类有文字、图形、图象、声音、正文等等。数据与其语义是不可分的。解析在现代计算机系统中数据的概念是广义的。早期的计算机系统主要用于科学计算,处理的数据是整数、实数、浮点数等传统数学中的数据等。现在计算机能存储和处理的对象十分广泛,表示这些对象的数据也越来越复杂。数据与其语义是不可分的。500这个数字可以表示一件物品的价格是500元,也可以表示一个学术会议参加的人数有500人。还可以表示一袋奶粉重500克。数据库数据库是长期储存在计算机内、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。解析简单地讲,数据数据库数据具有永久储存、有组织和可共享三个特点。数据模型是数据库的核心概念。每个数据库中数据的都是按照某一种数据模型来组织的。数据库系统数据库系统(DBS)是指在计算机系统中引入数据库后的系统构成。数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。解析数据库系统和数据库是两个概念。数据库系统是一个人机系统,数据库是数据库系统的一个组成部分。但是在日常工作中人们常常把把数据库系统简称为数据库。希望读者能够从人们讲话或文章的上下文中区分“数据库系统”和“数据库”。不要引起混淆。数据库管理系统数据库管理系统DBMS是位于用户与操作系统之间的一层数据管理软件。用于科学地组织和存储数据、高效地获取和维护数据。DBMS主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。解析DBMS是一个大型复杂的软件系统。是计算机中的基础软件。目前,专门研制DBMS的厂商及其研制的DBMS产品很多。著名的有美国IBM公司的DB2关系数据库管理系统、IMS层次数据库管理系统;美国ORACLE公司的ORACLE关系数据库管理系统;SYBASE公司的SYBASE关系数据库管理系统;美国微软公司的SQLSERVER关系数据库管理系统等等。使用数据库系统有什么好处使用数据库系统的好处是由数据库管理系统的特点或优点决定的。使用数据库系统的好处很多,例如可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护的负担等。为什么有这些好处,可以结合第5题来回答。使用数据库系统可以大大提高应用开发的效率。因为在数据库系统中应用程序不必考虑数据的定义、存储和数据存取的具体路径,这些工作都由DBMS来完成。用一个通俗的比喻,使用了DBMS就如有了一个好参谋好助手,许多具体的技术工作都由这个助手来完成。开发人员就可以专注于应用逻辑的设计而不必为管理数据的许许多多复杂的细节操心。还有,当应用逻辑改变,数据的逻辑结构需要改变时,由于数据库系统提供了数据与程序之间的独立性。数据逻辑结构的改变是DBA的责任,开发人员不必修改应用程序,或者只需要修改很少的应用程序。从而既简化了应用程序的编制,又大大减少了应用程序的维护和修改。使用数据库系统可以减轻数据库系统管理人员维护系统的负担。因为DBMS在数据库建立、运用和维护时对数据库进行统一的管理和控制,包括数据的完整性、安全性,多用户并发控制,故障恢复等等都由DBMS执行。总之,使用数据库系统的优点是很多的,既便于数据的集中管理,控制数据冗余,可以提高数据的利用率和一致性,又有利于应用程序的开发和维护。读者可以在自己今后的工作中结合具体应用,认真加以体会和总结。试述文件系统与数据库系统的区别和联系。文件系统与数据库系统的区别文件系统面向某一应用程序,共享性差、冗余度大,独立性差,纪录内有结构、整体无结构,应用程序自己控制。数据库系统面向现实世界,共享性高、冗余度小,具有高度的物理独立性和一定的逻辑独立性,整体结构化,用数据模型描述,由数据库管理系统提供数据安全性、完整性、并发控制和恢复能力。读者可以参考概论书中表11中的有关内容。文件系统与数据库系统的联系是文件系统与数据库系统都是计算机系统中管理数据的软件。解析文件系统是操作系统的重要组成部分,而DBMS是独立于操作系统的软件。但是DBMS是在操作系统的基础上实现的。数据库中数据的组织和存储是通过操作系统中文件系统来实现的。读者可以参考书中第十一章数据库管理系统。或者说,读者进一步学习数据库管理系统实现的有关课程(第十一章只是DBMS实现技术的概述)后可以对本题有深入的理解和全面的解答。因为DBMS的实现与操作系统中的文件系统是紧密相关的。例如,数据库实现的基础是文件,对数据库的任何操作最终要转化为对文件的操作。所以在DBMS实现中数据库物理组织的基本问题是如何利用或如何选择操作系统提供的基本的文件组织方法。这里我们就不具体展开了。举出适合用文件系统而不是数据库系统的例子;再举出适合用数据库系统的应用例子。适用于文件系统而不是数据库系统的应用例子数据的备份,软件或应用程序使用过程中的临时数据存储一般使用文件比较合适。早期功能比较简单、比较固定的应用系统也适合用文件系统。适用于数据库系统而非文件系统的应用例子目前,几乎所有企业或部门的信息系统都以数据库系统为基础,都使用数据库。如一个工厂的管理信息系统(其中会包括许多子系统,如库存管理系统、物资采购系统、作业调度系统、设备管理系统、人事管理系统等等),还比如学校的学生管理系统,人事管理系统,图书馆的图书管理系统等等都适合用数据库系统。希望同学们能举出自己了解的应用例子。试述数据库系统的特点。数据库系统的主要特点有一、数据结构化数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。解析注意这里“整体”两个字。在数据库系统中,数据不再针对某一个应用,而是面向全组织,具有整体的结构化。不仅数据是结构化的,而且数据的存取单位即一次可以存取数据的大小也很灵活。可以小到某一个数据项(如一个学生的姓名),大到一组记录(成千上万个学生记录)。而在文件系统中,数据的存取单位只有一个记录。如一个学生的完整记录。二、数据的共享性高,冗余度低,易扩充数据库的数据不再面向某个应用而是面向整个系统,因此可以被多个用户、多个应用、用多种不同的语言共享使用。由于数据面向整个系统,是有结构的数据,不仅可以被多个应用共享使用,而且容易增加新的应用,这就使得数据库系统弹性大,易于扩充。解析数据共享可以大大减少数据冗余,节约存储空间,同时还能够避免数据之间的不相容性与不一致性。所谓“数据面向某个应用”是指数据结构是针对某个应用设计的,只被这个应用程序或应用系统使用。可以说数据是某个应用的“私有资源”。所谓“弹性大”是指系统容易扩充也容易收缩,即应用增加或减少时不必修改整个数据库的结构,或者只要做很少的修改。我们可以取整体数据的各种子集用于不同的应用系统,当应用需求改变或增加时,只要重新选取不同的子集或加上一部分数据便可以满足新的需求。三、数据独立性高数据独立性包括数据的物理独立性和数据的逻辑独立性。数据库管理系统的模式结构和二级映象功能保证了数据库中的数据具有很高的物理独立性和逻辑独立性。解析所谓“独立性”即相互不依赖。数据独立性是指数据和程序相互不依赖。即数据的逻辑结构或物理结构改变了,程序不会跟着改变。数据与程序的独立,把数据的定义从程序中分离出去,加上数据的存取又由DBMS负责,简化了应用程序的编制,大大减少了应用程序的维护和修改。四、数据由DBMS统一管理和控制数据库的共享是并发的共享,即多个用户可以同时存取数据库中的数据甚至可以同时存取数据库中同一个数据。为此,DBMS必须提供统一的数据控制功能,包括数据的安全性保护,数据的完整性检查,并发控制和数据库恢复。解析DBMS数据控制功能包括四个方面数据的安全性保护保护数据以防止不合法的使用造成的数据的泄密和破坏;数据的完整性检查将数据控制在有效的范围内或保证数据之间满足一定的关系;并发控制对多用户的并发操作加以控制和协调,保证并发操作的正确性;数据库恢复当计算机系统发生硬件故障、软件故障,或者由于操作员的失误以及故意的破坏影响数据库中数据的正确性,甚至造成数据库部分或全部数据的丢失时,能将数据库从错误状态恢复到某一已知的正确状态(亦称为完整状态或一致状态)。下面我们可以得到“什么是数据库”的一个定义数据库是长期存储在计算机内有组织的大量的共享的数据集合。它可以供各种用户共享,具有最小冗余度和较高的数据独立性。DBMS在数据库建立、运用和维护时对数据库进行统一控制,以保证数据的完整性、安全性,并在多用户同时使用数据库时进行并发控制,在发生故障后对系统进行恢复。数据库系统的出现使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的新阶段。数据库管理系统的主要功能有哪些数据库定义功能;数据存取功能;数据库运行管理;数据库的建立和维护功能。试述数据模型的概念、数据模型的作用和数据模型的三个要素。数据模型是数据库中用来对现实世界进行抽象的工具,是数据库中用于提供信息表示和操作手段的形式构架。一般地讲,数据模型是严格定义的概念的集合。这些概念精确地描述系统的静态特性、动态特性和完整性约束条件。因此数据模型通常由数据结构、数据操作和完整性约束三部分组成。数据结构是所研究的对象类型的集合,是对系统的静态特性的描述。数据操作是指对数据库中各种对象(型)的实例(值)允许进行的操作的集合,包括操作及有关的操作规则,是对系统动态特性的描述。数据的约束条件是完整性规则的集合,完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。解析数据模型是数据库系统中最重要的概念之一。同学们必须通过概论的学习真正掌握数据模型的概念和作用。数据模型是数据库系统的基础。任何一个DBMS都以某一个数据模型为基础,或者说支持某一个数据模型。数据库系统中模型有不同的层次。根据模型应用的不同目的,可以将模型分成两类或说两个层次一是概念模型,是按用户的观点来对数据和信息建模,用于信息世界的建模,强调语义表达能力,概念简单清晰;另一是数据模型,是按计算机系统的观点对数据建模,用于机器世界,人们可以用它定义、操纵数据库中的数据。一般需要有严格的形式化定义和一组严格定义了语法和语义的语言,并有一些规定和限制,便于在机器上实现。试述概念模型的作用。概念模型实际上是现实世界到机器世界的一个中间层次。概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言。定义并解释概念模型中以下术语实体,实体型,实体集,属性,码,实体联系图(ER图)实体客观存在并可以相互区分的事物叫实体。实体型具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体称为实体型。实体集同型实体的集合称为实体集。属性实体所具有的某一特性,一个实体可由若干个属性来刻画。码唯一标识实体的属性集称为码。实体联系图ER图提供了表示实体型、属性和联系的方法实体型用矩形表示,矩形框内写明实体名。属性用椭圆形表示,并用无向边将其与相应的实体连接起来。联系用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(11,1N或MN)。10试给出三个实际部门的ER图,要求实体型之间具有一对一,一对多,多对多各种不同的联系。第二章关系数据库一、选择题1下面的选项不是关系数据库基本特征的是(A。A不同的列应有不同的数据类型B不同的列应有不同的列名C与行的次序无关D与列的次序无关2一个关系只有一个(D)。A候选码B外码C超码D主码3关系模型中,一个码是(C)。A可以由多个任意属性组成B至多由一个属性组成C可有多个或者一个其值能够唯一表示该关系模式中任何元组的属性组成D以上都不是4现有如下关系患者(患者编号,患者姓名,性别,出生日起,所在单位)医疗(患者编号,患者姓名,医生编号,医生姓名,诊断日期,诊断结果)其中,医疗关系中的外码是(A)。A患者编号B患者姓名C患者编号和患者姓名D医生编号和患者编号5现有一个关系借阅(书号,书名,库存数,读者号,借期,还期),假如同一本书允许一个读者多次借阅,但不能同时对一种书借多本,则该关系模式的外码是(D)。A书号B读者号C书号读者号D书号读者号借期6关系模型中实现实体间NM联系是通过增加一个()。A关系实现B属性实现C关系或一个属性实现D关系和一个属性实现7关系代数运算是以()为基础的运算。A关系运算B谓词演算C集合运算D代数运算8关系数据库管理系统应能实现的专门关系运算包括()。A排序、索引、统计B选择、投影、连接C关联、更新、排序D显示、打印、制表9五种基本关系代数运算是()。ABCD10关系代数表达式的优化策略中,首先要做的是()。A对文件进行预处理B尽早执行选择运算C执行笛卡尔积运算D投影运算11关系数据库中的投影操作是指从关系中()。A抽出特定记录B抽出特定字段C建立相应的影像D建立相应的图形12从一个数据库文件中取出满足某个条件的所有记录形成一个新的数据库文件的操作是()操作。A投影B联接C选择D复制13关系代数中的联接操作是由()操作组合而成。A选择和投影B选择和笛卡尔积C投影、选择、笛卡尔积D投影和笛卡尔积14自然联接是构成新关系的有效方法。一般情况下,当对关系R和S是用自然联接时,要求R和S含有一个或者多个共有的()。A记录B行C属性D元组15假设有关系R和S,在下列的关系运算中,()运算不要求“R和S具有相同的元数,且它们的对应属性的数据类型也相同”。ARSBRSCRSDRS16假设有关系R和S,关系代数表达式R(RS)表示的是()。ARSBRSCRSDRS17下面列出的关系代数表达是中,那些式子能够成立()。F1F2EF1F2EE1E2E2E1E1E2E3E1E2E3F1F2EF2F1EA全部B和C没有D和18下面四个关系表达式是等价的,是判别它们的执行效率()。E1ABCDERSE2ABCRDESE3ARBCDESE3ADERBCSAE3最快BE2最快CE4最快DE1最快19有关系SC(S_ID,C_ID,AGE,SCORE),查找年龄大于22岁的学生的学号和分数,正确的关系代数表达式是()。S_ID,SCOREAGE22SCAGE22S_ID,SCORESCS_ID,SCOREAGE22S_ID,SCORE,AGESCA和B只有正确C只有正确D和正确选择题答案1A2D3C4A5D6A7C8B9A10B11B12C13B14C15D16A17C18A19D二、简答题1试述关系模型的三个组成部分。2试述关系数据语言的特点和分类。3设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式SSNO,SNAME,STATUS,CITY;PPNO,PNAME,COLOR,WEIGHT;JJNO,JNAME,CITY;SPJSNO,PNO,JNO,QTY;供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成;零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY)组成;供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,表示某供应商供应某种零件给某工程项目的数量为QTY。试用关系代数完成如下查询(1)求供应工程J1零件的供应商号码SNO;(2)求供应工程J1零件P1的供应商号码SNO;(3)求供应工程J1零件为红色的供应商号码SNO;(4)求没有使用天津供应商生产的红色零件的工程号JNO;(5)求至少用了供应商S1所供应的全部零件的工程号JNO。4定义并理解下列术语,说明它们之间的联系与区别(1)域,笛卡尔积,关系,元组,属性(2)主码,候选码,外码(3)关系模式,关系,关系数据库5试述关系模型的完整性规则。在参照完整性中,为什么外码属性的值有时也可以为空什么情况下才可以为空6试述等值连接与自然连接的区别和联系。7关系代数的基本运算有哪些8试用关系代数的基本运算来表示其他运算。第三章SQL语言一、选择题1SQL语言是()的语言,容易学习。A过程化B非过程化C格式化D导航式2SQL语言的数据操纵语句包括SELECT、INSERT、UPDATE、DELETE等。其中最重要的,也是使用最频繁的语句是()。ASELECTBINSERTCUPDATEDDELETE3在视图上不能完成的操作是()。A更新视图B查询C在视图上定义新的表D在视图上定义新的视图4SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,其中,CREATE、DROP、ALTER语句是实现哪种功能()。A数据查询B数据操纵C数据定义D数据控制5SQL语言中,删除一个视图的命令是()。ADELETEBDROPCCLEARDREMOVE6在SQL语言中的视图VIEW是数据库的()。A外模式B模式C内模式D存储模式7下列的SQL语句中,()不是数据定义语句。ACREATETABLEBDROPVIEWCCREATEVIEWDGRANT8若要撤销数据库中已经存在的表S,可用()。ADELETETABLESBDELETESCDROPTABLESDDROPS9若要在基本表S中增加一列CN(课程名),可用()。AADDTABLES(CNCHAR()BADDTABLESALTER(CNCHAR()CALTERTABLESADD(CNCHAR()DALTERTABLES(ADDCNCHAR()10学生关系模式S(S,SNAME,SEX,AGE),S的属性分别表示学生的学号、姓名、性别、年龄。要在表S中删除一个属性“年龄”,可选用的SQL语句是()。ADELETEAGEFROMSBALTERTABLESDROPAGECUPDATESAGEDALTERTABLESAGE11有关系S(S,SNAME,SAGE),C(C,CNAME),SC(S,C,GRADE)。其中S是学生号,SNAME是学生姓名,SAGE是学生年龄,C是课程号,CNAME是课程名称。要查询选修“ACCESS”课的年龄不小于20的全体学生姓名的SQL语句是SELECTSNAMEFROMS,C,SCWHERE子句。这里的WHERE子句的内容是()。ASSSCSANDCCSCCANDSAGE20ANDCNAMEACCESSBSSSCSANDCCSCCANDSAGEIN20ANDCNAMEINACCESSCSAGEIN20ANDCNAMEINACCESSDSAGE20ANDCNAMEACCESS12设关系数据库中一个表S的结构为S(SN,CN,GRADE),其中SN为学生名,CN为课程名,二者均为字符型;GRADE为成绩,数值型,取值范围0100。若要把“张二的化学成绩80分”插入S中,则可用()。AADDINTOSVALUES(张二,化学,80)BINSERTINTOSVALUES(张二,化学,80)CADDINTOSVALUES(张二,化学,80)DINSERTINTOSVALUES(张二,化学,80)13设关系数据库中一个表S的结构为S(SN,CN,GRADE),其中SN为学生名,CN为课程名,二者均为字符型;GRADE为成绩,数值型,取值范围0100。若要更正王二的化学成绩为85分,则可用()。AUPDATESSETGRADE85WHERESN王二ANDCN化学BUPDATESSETGRADE85WHERESN王二ANDCN化学CUPDATEGRADE85WHERESN王二ANDCN化学DUPDATEGRADE85WHERESN王二ANDCN化学14在SQL语言中,子查询是()。A返回单表中数据子集的查询语言B选取多表中字段子集的查询语句C选取单表中字段子集的查询语句D嵌入到另一个查询语句之中的查询语句15SQL是一种()语言。A高级算法B人工智能C关系数据库D函数型16有关系S(S,SNAME,SEX),C(C,CNAME),SC(S,C,GRADE)。其中S是学生号,SNAME是学生姓名,SEX是性别,C是课程号,CNAME是课程名称。要查询选修“数据库”课的全体男生姓名的SQL语句是SELECTSNAMEFROMS,C,SCWHERE子句。这里的WHERE子句的内容是()。ASSSCSANDCCSCCANDSEX男ANDCNAME数据库BSSSCSANDCCSCCANDSEXIN男ANDCNAMEIN数据库CSEX男ANDCNAME数据库DSSEX男ANDCNAME数据库17若用如下的SQL语句创建了一个表SCCREATETABLESC(SCHAR(6)NOTNULL,CCHAR(3)NOTNULL,SCOREINTEGER,NOTECHAR(20);向SC表插入如下行时,()行可以被插入。A(201009,111,60,必修)B(200823,101,NULL,NULL)C(NULL,103,80,选修)D(201132,NULL,86,)18假设学生关系S(S,SNAME,SEX),课程关系C(C,CNAME),学生选课关系SC(S,C,GRADE)。要查询选修“COMPUTER”课的男生姓名,将涉及到关系()。ASBS,SCCC,SCDS,C,SC选择题答案1B2A3C4C5B6A7D8C9C10B11A12D13A14D15C16A17B18D二、简答题1试述SQL语言的特点。答(1)综合统一。SQL语言集数据定义语言DDL、数据操纵语言DML、数据控制语言DCL的功能于一体。(2)高度非过程化。用SQL语言进行数据操作,只要提出“做什么”,而无须指明“怎么做”,因此无需了解存取路径,存取路径的选择以及SQL语句的操作过程由系统自动完成。(3)面向集合的操作方式。SQL语言采用集合操作方式,不仅操作对象、查找结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。(4)以同一种语法结构提供两种使用方式。SQL语言既是自含式语言,又是嵌入式语言。作为自含式语言,它能够独立地用于联机交互的使用方式,也能够嵌入到高级语言程序中,供程序员设计程序时使用。(5)语言简捷,易学易用。2试述SQL的定义功能。答SQL的数据定义功能包括定义表、定义视图和定义索引。SQL语言使用CREATETABLE语句定义建立基本表,;ALTERTABLE语句修改基本表定义,DROPTABLE语句删除基本表;建立索引使用CREATEINDEX语句建立索引,DROPINDEX语句删除索引表;SQL语言使用CREATEVIEW命令建立视图,DROPVIEW语句删除视图。3用SQL语句建立第3章习题3中的四个表。答对于S表SSNO,SNAME,STATUS,CITY;建S表CREATETABLESSNOCHAR3,SNAMECHAR10,STATUSCHAR2,CITYCHAR10;PPNO,PNAME,COLOR,WEIGHT;建P表CREATETABLEPPNOCHAR3,PNAMECHAR10,COLORCHAR4,WEIGHTINT;JJNO,JNAME,CITY;建J表CREATETABLEJJNOCHAR3,JNAMECHAR10,CITYCHAR10;SPJSNO,PNO,JNO,QTY;建SPJ表CREATETABLESPJSNOCHAR3,PNOCHAR3,JNOCHAR3,QTYINT;4针对上题中建立的四个表试用SQL语言完成第3章习题3中的查询。答(1)求供应工程J1零件的供应商号码SNO;SELECTSNOFROMSPJWHEREJNOJ1;(2)求供应工程J1零件P1的供应商号码SNO;SELECTSNOFROMSPJWHEREJNOJ1ANDPNOP1;(3)求供应工程J1零件为红色的供应商号码SNO;SELECTSNOFROMSPJWHEREJNOJ1ANDPNOINSELECTPNOFROMPWHERECOLOR红;或SELECTSNOFROMSPJ,PWHEREJNOJ1ANDSPJPNOPPNOANDCOLOR红;(4)求没有使用天津供应商生产的红色零件的工程号JNO;解析用SQL语言表示如下SELECTJNOFROMJWHERENOTEXISTSSELECTFROMSPJWHERESPJJNOJJNOANDSNOINSELECTSNOFROMSWHERECITY天津ANDPNOINSELECTPNOFROMPWHERECOLOR红;或SELECTJNOFROMJWHERENOTEXISTSSELECT1FROMSPJ,S,PWHERESPJJNOJJNOANDSPJSNOSSNOANDSPJPNOPPNOANDSCITY天津ANDPCOLOR红;注意从J表入手,以包含那些尚未使用任何零件的工程号。(5)求至少用了供应商S1所供应的全部零件的工程号JNO。转换语义查询这样的工程,没有一个S1供应商供应的零件,该工程没有使用解析用SQL语言表示如下SELECTDISTINCTJNOFROMSPJSPJZWHERENOTEXISTSSELECTFROMSPJSPJXWHERESNOS1ANDNOTEXISTSSELECTFROMSPJSPJYWHERESPJYPNOSPJXPNO/S1供应商生产的零件ANDSPJYJNONSPJZJNOANDSPJYSNOS1);5针对习题3中的四个表试用SQL语言完成以下各项操作(1)找出所有供应商的姓名和所在城市。(2)找出所有零件的名称、颜色、重量。(3)找出使用供应商S1所供应零件的工程号码。(4)找出工程项目J2使用的各种零件的名称及其数量。(5)找出上海厂商供应的所有零件号码。(6)找出使用上海产的零件的工程名称。(7)找出没有使用天津产的零件的工程号码。(8)把全部红色零件的颜色改成蓝色。(9)由S5供给J4的零件P6改为由S3供应,请作必要的修改。(10)从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录。(11)请将S2,J6,P4,200插入供应情况关系。答1找出所有供应商的姓名和所在城市。SELECTSNAME,CITYFROMS2找出所有零件的名称、颜色、重量。SELECTPNAME,COLOR,WEIGHTFROMP3找出使用供应商S1所供应零件的工程号码。SELECTJNOFROMSPJWHERESNOS14找出工程项目J2使用的各种零件的名称及其数量。SELECTPPNAME,SPJQTYFROMP,SPJWHEREPPNOSPJPNOANDSPJJNOJ25找出上海厂商供应的所有零件号码。SELECTDISTINCTPNOFROMSPJWHERESNOIN(SELECTSNOFROMSWHERECITY上海)6找出使用上海产的零件的工程名称。SELECTJNAMEFROMJ,SPJ,SWHEREJJNOSPJJNOANDSPJSNOSSNOANDSCITY上海或SELECTJNAMEFROMJWHEREJNOINSELECTJNOFROMSPJ,SWHERESPJSNOSSNOANDSCITY上海7找出没有使用天津产的零件的工程号码。SELECTJNOFROMJWHERENOTEXISTSSELECTFROMSPJWHERESPJJNOJJNOANDSNOINSELECTSNOFROMSWHERECITY天津;或SELECTJNOFROMJWHERENOTEXISTSSELECT1FROMSPJ,SWHERESPJJNOJJNOANDSPJSNOSSNOANDSCITY天津;8把全部红色零件的颜色改成蓝色。UPDATEPSETCOLOR蓝WHERECOLOR红9由S5供给J4的零件P6改为由S3供应,请作必要的修改。UPDATESPJSETSNOS3WHERESNOS5ANDJNOJ4ANDPNOP610从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录。DELETEFROMSPJWHERESNOS2或DELETEFROMSWHERESNOS2解析注意删除顺序,应该先从SPJ表中删除供应商S2所供应零件的记录,然后从从S表中删除S2。11请将S2,J6,P4,200插入供应情况关系。INSERTINTOSPJSNO,JNO,PNO,QTYVALUESS2,J6,P4,200或INSERTINTOSPJVALUESS2,P4,J6,2006什么是基本表什么是视图两者的区别和联系是什么答基本表是本身独立存在的表,在SQL中一个关系就对应一个表。视图是从一个或几个基本表导出的表。视图本身不独立存储在数据库中,是一个虚表。即数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中。视图在概念上与基本表等同,用户可以如同基本表那样使用视图,可以在视图上再定义视图。7试述视图的优点。答1视图能够简化用户的操作。2视图使用户能以多种角度看待同一数据。3视图对重构数据库提供了一定程度的逻辑独立性。4视图能够对机密数据提供安全保护。8所有的视图是否都可以更新为什么答不是。视图是不实际存储数据的虚表,因此对视图的更新,最终要转换为对基本表的更新。因为有些视图的更新不能唯一地有意义地转换成对相应基本表的更新,所以,并不是所有的视图都是可更新的。如概论351中的视图S_G(学生的学号及他的平均成绩)CREATVIEWS_GSNO,GAVGASSELECTSNO,AVGGRADEFROMSCGROUPBYSNO;要修改平均成绩,必须修改各科成绩,而我们无法知道哪些课程成绩的变化导致了平均成绩的变化。9哪类视图是可以更新的,哪类视图是不可更新的各举一例说明。答基本表的行列子集视图一般是可更新的。如概论353中的例1。若视图的属性来自集函数、表达式,则该视图肯定是不可以更新的。如概论353中的S_G视图。10试述某个你熟悉的实际系统中对视图更新的规定。答(略)解析不同的系统对视图更新的规定是不同的,读者必须了解你所用系统对视图更新的规定。11请为三建工程项目建立一个供应情况的视图,包括供应商代码(SNO)、零件代码(PNO)、供应数量(QTY)。针对该视图完成下列查询(1)找出三建工程项目使用的各种零件代码及其数量。(2)找出供应商S1的供应情况。答建视图CREATEVIEWV_SPJASSELECTSNO,PNO,QTYFROMSPJWHEREJNO(SELECTJNOFROMJWHEREJNAME三建)对该视图查询1找出三建工程项目使用的各种零件代码及其数量。SELECTPNO,QTYFROMV_SPJ2找出供应商S1的供应情况。SELECTPNO,QTY/S1供应三建工程的零件号和对应的数量/FROMV_SPJWHERESNOS1第四章数据库安全性一、选择题1以下()不属于实现数据库系统安全性的主要技术和方法。A存取控制技术B视图技术C审计技术D出入机房登记和加锁2SQL中的视图提高了数据库系统的()。A完整性B并发控制C隔离性D安全性3SQL语言的GRANT和REMOVE语句主要是用来维护数据库的()。A完整性B可靠性C安全性D一致性4在数据库的安全性控制中,授权的数据对象的(),授权子系统就越灵活。A范围越小B约束越细致C范围越大D约束范围大选择题答案1D2D3C4A三、简答题1什么是数据库的安全性答数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。2数据库安全性和计算机系统的安全性有什么关系答安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。系统安全保护措施是否有效是数据库系统的主要指标之一。数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的,3试述实现数据库安全性控制的常用方法和技术。答实现数据库安全性控制的常用方法和技术有1用户标识和鉴别该方法由系统提供一定的方式让用户标识自己的名字或身份。每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供系统的使用权。2存取控制通过用户权限定义和合法权检查确保只有合法权限的用户访问数据库,所有未被授权的人员无法存取数据。例如C2级中的自主存取控制(DAC),B1级中的强制存取控制(MAC);3视图机制为不同的用户定义视图,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。4审计建立审计日志,把用户对数据库的所有操作自动记录下来放入审计日志中,DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。5数据加密对存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获知数据的内容。具体内容请参见概论92。4什么是数据库中的自主存取控制方法和强制存取控制方法答自主存取控制方法定义各个用户对不同数据对象的存取权限。当用户对数据库访问时首先检查用户的存取权限。防止不合法用户对数据库的存取。强制存取控制方法每一个数据对象被(强制地)标以一定的密级,每一个用户也被(强制地)授予某一个级别的许可证。系统规定只有具有某一许可证级别的用户才能存取某一个密级的数据对象。解析自主存取控制中自主的含义是用户可以将自己拥有的存取权限“自主”地授予别人。即用户具有一定的“自主”权。5SQL语言中提供了哪些数据控制(自主存取控制)的语句请试举几例说明它们的使用方法。答SQL中的自主存取控制是通过GRANT语句和REVOKE语句来实现的。如GRANTSELECT,INSERTONSTUDENTTO王平WITHGRANTOPTION;就将STUDENT表的SELECT和INSERT权限授予了用户王平,后面的“WITHGRANTOPTION”子句表示用户王平同时也获得了“授权”的权限,即可以把得到的权限继续授予其他用户。REVOKEINSERTONSTUDENTFROM王平CASCADE;就将STUDENT表的INSERT权限从用户王平处收回,选项CASCADE表示,如果用户王平将STUDENT的INSERT权限又转授给了其他用户,那么这些权限也将从其他用户处收回。6今有两个关系模式职工(职工号,姓名,年龄,职务,工资,部门号)部门(部门号,名称,经理名,地址,电话号)请用SQL的GRANT和REVOKE语句(加上视图机制)完成以下授权定义或存取控制功能A用户王明对两个表有SELECT权力;GRANTSELECTON职工,部门TO王明;HTTP/WWWXIANNWCOM/MEINV/QITA/12994HTMLHTTP/WWWXIANNWCOM/MEINV/QITA/12993HTMLHTTP/WWWXIANNWCOM/MEINV/QITA/12992HTMLB用户李勇对两个表有INSERT和DELETE权力;GRANTINSERT,DELETEON职工,部门TO李勇;C每个职工只对自己的记录有SELECT权力;GRANTSELECTON职工WHENUSER()NAMETOALL;这里假定系统的GRANT语句支持WHEN子句和USER()的使用。用户将自己的名字作为ID。注意,不同的系统这些扩展语句可能是不同的。读者应该了解你使用的DBMS产品的扩展语句。D用户刘星对职工表有SELECT权力,对工资字段具有更新权力;GRANTSELECT,UPDATE(工资)ON职工TO刘星;E用户张新具有修改这两个表的结构的权力;GRANTALTERTABLEON职工,部门TO张新;F用户周平具有对两个表所有权力读,插,改,删数据,并具有给其他用户授权的权力;GRANTALLPRIVILIGESON职工,部门TO周平WITHGRANTOPTION;G用户杨兰具有从每个部门职工中SELECT最高工资,最低工资,平均工资的权力,他不能查看每个人的工资。答首先建立一个视图。然后对这个视图定义杨兰的存取权限。CREATEVIEW部门工资ASSELECT部门名称,MAX(工资),MIN(工资),AVG(工资)FROM职工,部门WHERE职工部门号部门部门号GROUPBY职工部门号;GRANTSELECTON部门工资TO杨兰;7把习题8中AG的每一种情况,撤销各用户所授予的权力。答AREVOKESELECTON职工,部门FROM王明;BREVOKEINSERT,DELETEON职工,部门FROM李勇;CREOVKESELECTON职工WHENUSER()NAMEFROMALL;这里假定用户将自己的名字作为ID,且系统的REOVKE语句支持WHEN子句,系统也支持USER()的使用。DREVOKESELECT,UPDATEON职工FROM刘星;EREVOKEALTERTABLEON职工,部门FROM张新;FREVOKEALLPRIVILIGESON职工,部门FROM周平;GREVOKESELECTON部门工资FROM杨兰;DROPVIEW部门工资;8为什么强制存取控制提供了更高级别的数据库安全性答强制存取控制(MAC)是对数据本身进行密级标记,无论数据如何复制,标记与数据是一个不可分的整体,只有符合密级标记要求的用户才可以操纵数据,从而提供了更高级别的安全性。9理解并解释MAC机制中主体、客体、敏感度标记的含义。答主体是系统中的活动实体,既包括DBMS所管理的实际用户,也包括代表用户的各进程。客体是系统中的被动实体,是受主体操纵的,包括文件、基表、索引、视图等。对于主体和客体,DBMS为它们每个实例(值)指派一个敏感度标记(LABEL)。敏感度标记被分成若干级别,例如绝密(TOPSECRET)、机密(SECRET)、可信(CONFIDENTIAL)、公开(PUBLIC)等。主体的敏感度标记称为许可证级别(CLEARANCELEVEL),客体的敏感度标记称为密级(CLASSIFICATIONLEVEL)。10什么是数据库的审计功能,为什么要提供审计功能答审计功能是指DBMS的审计模块在用户对数据库执行操作的同时把所有操作自动记录到系统的审计日志中。因为任何系统的安全保护措施都不是完美无缺的,蓄意盗窃破坏数据的人总可能存在。利用数据库的审计功能,DBA可以根据审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。11统计数据库中存在何种特殊的安全性问题答统计数据库允许用户查询聚集类型的信息,如合计、平均值、最大值、最小值等,不允许查询单个记录信息。但是,人们可以从合法的查询中推导出不合法的信息,即可能存在隐蔽的信息通道,这是统计数据库要研究和解决的特殊的安全性问题。12试述你了解的某一个实际的DBMS产品的安全性措施。答不同的DBMS产品以及同一产品的不同版本的安全措施各不相同,仁者见仁,智者见智,请读者自己了解。概论上94简单介绍了有关ORACLE数据库的安全性措施。第五章数据库完整性一、选择题1完整性检查和控制的防范对象(),防止它们进入数据库。安全性控制的防范对象是(),防止他们对数据库数据的存取。A不合语义的数据B非法用户C不正确的数据D非法操作2下述哪个是SQL语言中的数据控制命令()。AGRANTBCOMMITCUPDATEDSELECT3下述SQL语言中的权限,哪一个允许用户定义新关系时,引用其他关系的主码作为外码()。AINSERTBDELETECREFERENCESDSELECT选择题答案1ACBD2A3C二、简答题1什么是数据库的完整性答数据库的完整性是指数据的正确性和相容性。2数据库的完整性概念与数据库的安全性概念有什么区别和联系答数据的完整性和安全性是两个不同的概念,但是有一定的联系。前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出(GARBAGEINGARBAGEOUT)所造成的无效操作和错误结果。后者是保护数据库防止恶意的破坏和非法的存取。也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。3什么是数据库的完整性约束条件可分为哪几类答完整性约束条件是指数据库中的数据应该满足的语义约束条件。一般可以分为六类静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。静态列级约束是对一个列的取值域的说明,包括以下几方面1对数据类型的约束,包括数据的类型、长度、单位、精度等2对数据格式的约束3对取值范围或取值集合的约束。4对空值的约束5其他约束静态元组约束就是规定组成一个元组的各个列之间的约束关系,静态元组约束只局限在单个元组上。静态关系约束是在一个关系的各个元组之间或者若干关系之间常常存在各种联系或约束。常见的静态关系约束有1实体完整性约束。2参照完整性约束。3函数依赖约束。动态列级
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年新疆兵团第九师白杨市公安局面向社会招录警务辅助人员30人备考题库及一套参考答案详解
- 2025年防城港市生态环境局招聘备考题库及一套完整答案详解
- 北京市水利规划设计研究院2026年校园招聘备考题库及一套答案详解
- vfp视频课程设计
- 2025 九年级语文下册戏剧人物矛盾化解课件
- 2026中国医学科学院生物医学工程研究所招聘38人笔试重点试题及答案解析
- 2025年农村电商服务站可持续发展报告
- 2025年兴业银行武汉分行社会招聘备考题库及参考答案详解1套
- 2026事业单位招聘考试核心题库及答案解析
- 长沙市望城区人民医院2025年面向社会公开招聘编外合同制专业技术人员备考题库有答案详解
- Know Before You Go:趣谈“一带一路”国家智慧树知到期末考试答案章节答案2024年贵州理工学院
- JBT 11270-2024 立体仓库组合式钢结构货架技术规范(正式版)
- 求职OMG-大学生就业指导与技能开发智慧树知到期末考试答案章节答案2024年中国海洋大学
- JBT 7387-2014 工业过程控制系统用电动控制阀
- A课堂惩罚游戏
- 整理收纳师行业分析
- GB/T 228.1-2021金属材料拉伸试验第1部分:室温试验方法
- 氢能与燃料电池-课件-第五章-制氢技术
- 2023QC小组活动基础知识培训
- 生理学期末考试复习试题库及答案
- 旅游地理学 国家公园建设与管理
评论
0/150
提交评论