Oracle-11g数据库管理与开发基础教程课后习题及答案_第1页
Oracle-11g数据库管理与开发基础教程课后习题及答案_第2页
Oracle-11g数据库管理与开发基础教程课后习题及答案_第3页
Oracle-11g数据库管理与开发基础教程课后习题及答案_第4页
Oracle-11g数据库管理与开发基础教程课后习题及答案_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章选择题1、Oracle数据库服务器包含的两个主要组件是(AB)A、Oracle实例 B、oracle数据库 C、内存结构 D、后台进程2、create database 创建Oracle数据库时创建的文件包括(AC)A、数据文件 B、控制文件 C、日志文件 D、初始化参数文件3、创建Oracle数据库时,createdatabase语句中指出了需要创建的数据文件、日志文件存储路径和名称,但没有指出需要创建的控制文件,因此创建数据库之前需要创建(D)个控制文件。A、0 B、1 C、2 D、任意数量4、调用shutdown命令关闭Oracle数据库后,以下(D)命令关闭的数据库处于不一致状态

2、。A、shutdown normal B、shutdown transactional C、shutdown immediate D、shutdown abort5、作为普通用户,只有当数据库处于以下(C)状态下才可连接访问。A、NUMOUNT B、MOUNT C、OPEN D、CLOSE填空题1、SGA可分为以下几种主要区域:(SGA固定)、(数据库缓冲区缓存)、(重做日志缓冲区)、(共享池)等。2、Oracle实例有多种后台进程,其中每个数据库实例上必须启动的后台进程包括(数据库写入进程)、(日志写入进程)、(检查点进程)、(进程监视进程)、(系统监视进程)等。3、Oracle数据库的逻辑

3、存储结构是(表空间)、(段)、(区)、(数据块)等。4、Oracle数据库逻辑上的表空间结构与磁盘上的物理(数据)文件相关联。5、下面连接字符串采用的是(简易连接)命名方式。CONNECT HYPERLINK mailto:Scott/tigerdbs: Scott/tigerdbs:编程题写出以下操作的SQL*PLUS命令语句:先启动Oracle实例到“已启动实例状态”,再修改Oracle实例到“数据库已装载状态”,最后修改Oracle实例到打开状态。Startup nomoutAlter database mount;Alter database open;第二章选择题1、SQL*Plus

4、下可以采用以下(BD)方法结束SQL语句的编辑状态,并执行它。A、在空行上输入句点(.) B、在语句结束直接输入分好(;)C、在空行上直接按回车键 D、在空行上输入斜杠(/)2、SQL*Plus下可以采用以下(AD)方法结束PL/SQL语句块的编辑状态。A、在空行上输入句点(.) B、在语句结束直接输入分好(;)C、在空行上直接按回车键 D、在空行上输入斜杠(/)3、SQL*Plus的SQL缓冲区可缓存(AC)A、SQL语句 B、SQL*Plus命令 C、PL/SQL语句块 D、外部操作系统命令4、在SQL Developer 中,使用同一个连接名称建立多个会话,如果其中一个会话结束事务时,其

5、他会话窗口内的事务将(A)A、随之结束 B、继续执行 C、全部回滚 D、全部提交5、控制Database Control 运行所使用的工具是(B)A、emca B 、emctl C、dbca D、Netca编程题启动SQL*PLUS,并以SYSDBA管理权限连接,用户名为system,密码为system。Sqlplus system/oracle as sysdba先以SYSDBA管理权限连接,用户名为system,密码为system;再立即关闭数据库。Connect system/oracle as sysdbaShutdown immediate第三章选择题1、访问数据字典,数据库必须启动

6、到(D)状态。A、CLOSE B、NOMOUNT C、MOUNT D、OPEN2、数据库管理员需要找出问题瓶颈所在,以优化Oracle数据库服务器的性能,这时需要访问的对象是(B)A、数据字典 B、动态性能视图 C、用户表 D、以上均可填空题1、查询(dictionary)可以了解Oracle数据库内所有数据字典的名称。2、查询(v$fixed_table)可以了解Oracle数据库内与动态性能视图相关的对象名称。3、数据字典存储在(system)表空间内,但属于(系统(超级管理员)用户。第四章选择题1、调用SQL语句ALTER SYSTEM SET可以设置(A C)中初始化参数。A、当前实例

7、 B、pfile C、SPfile D、以上全错2、调用下面语句修改初始化参数后,关于此修改的生效时间,描述最准确的是(C)。ALTER SYSTEM SET 参数名=值 SCOPE=SPfile;A、立即生效 B、下次实例重新启动时生效C、下次实例使用SPfile重新启动时生效 C、永不生效3、数据库目前有两个控制文件,其中一个控制文件损坏,这将导致数据库实例(A)。A、异常中止 B、关闭损坏的控制文件,数据库继续运行C、关闭数据库文件,实例继续运行 C、数据库运行不受影响,直到所有控制文件损坏为止编程题1.假设当前数据库实例启动时是使用的d:init.ora文本初始化参数文件,写出创建服务

8、器参数化文件的SQL语句;并写出以该服务器参数文件启动数据库实例的SQL*PLUS命令。create spfile from pfile= d:init.ora; startup2.写出查看当前实例sga_target 参数值的SQL*PLUS命令;以及将当前实例的sga_target参数值设置为800M的SQL语句。show parameter sga_targetalter system set sga_target 800m;3.已知当前数据库已有两个控制文件:C:ORACLEORADATAORCLCONTROL01.CTL,C:ORACLEORADATAORCLCONTROL02.CT

9、L;现要求为当前数据库增加一路控制文件:D: CONTROL03.CTL。写出该操作的SQL语句。Alter system set control_files=D:ORACLEORADATAORCLCONTROL01.CTL,D:ORACLEORADATAORCLCONTROL02.CTL, D: CONTROL03.CTL SCOPE=SPFILE;Shutdown immediateCopy D:ORACLEORADATAORCLCONTROL01.CTL D: CONTROL03.CTL4.查看当前数据库所使用的控制文件位置,写出SQL*PLUS命令或SQL语句。show paramet

10、er control_filesSELECT name FROM v$controlfile;SELECT value FROM v$parameter WHERE name=control_files;(三选一)第五章选择题1、Oracle数据库重做日志由(B)后台进程写入联机重做日志文件。A、DBWR B、LGWR C、ARCn D、SMON2、重做日志缓冲区中的重做日志在(A B C D)会被写入重做日志文件。A、事务提交 B、冲走日志冲区达到三分之一满,或者日志缓冲区内的日志量超过1MB时C、每3s过后D、检查点发生时3、改变Oracle数据库归档模式时,需要把数据库启动到(B)状态。

11、A、NOMUNT B、MOUNT C、OPEN D、CLOSE简答题1、请简述Oracle数据库重做日志从产生到归档过程。答:首先,在用户执行数据库操作时,服务器进程把重做日志从用户内存区域拷贝到Oracle实例中的日志缓冲区。之后,在一定条件下,LGWR把重做日志缓冲区内的重做日志写入重做日志文件。最后,如果数据库运行在自动归档模式下,当发生日志切换时,归档进程将把填充过的重做日志文件组内容复制到归档日志文件中保存。编程题先查看当前重做日志文件组的组号、序号及状态;然后强制进行日志切换,再重新查看当前重做日志文件组的组号、序号及状态。Alter system swtich logfile;S

12、ELECT group#, sequence#,status FROM v$log;现要求为数据库添加一个重做日志文件组,包括两个日志文件成员(D:oracleredo04-1.log,D:oracleredo04-2.log),大小为50M,块的大小为512B。ALTER DATABASE orcl ADD LOGFILE (D:oracle redo04-1.log,D:oracle redo04-2.log)SIZE 50MBLOCKSIZE 512REUSE;第六章填空题1、Oracle数据库表空间分为(永久表空间)、(临时表空间)和(还原表空间)3种。2、Oracle数据库段空间管理

13、方式分为(自动)和(手动)两种。3、Oracle数据库中的段分为(表段)、(索引段)、(临时段)和(回滚段)4种。4、Oracle数据库表空间内区分配管理方式包括(字典管理方式)和(本地管理方式)两种,Oracle建议采用(本地管理方式)方式。简答题1、Undo数据的作用是什么?回滚事务、提供读一致性、恢复事务、闪回查询、闪回事务处理和闪回表编程题1.创建一个表空间test,其中包含一个数据文件(存放于D盘根目录,主文件名为自己姓名的汉语全拼),数据文件初始大小为10M,并且允许自动扩展,每次扩展2M。CREATE TABLESPACE testDATAFILE D:xxx.dbf SIZE

14、10MAutoextend on next 2m;2.建立本地管理表空间index_tbs,用于存放索引数据。其包含1个数据文件index01.dbf(存放于D盘根目录),区尺寸指定为统一大小128KB,段自动管理。CREATE TABLESPACE index_tbsDATAFILE D: index01.dbf SIZE 10MEXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K;3.将test表空间增加一个数据文件,位置d:oracletestdf+学号后两位,大小为5M,以2m进行自动增长,最大大小没有限制。ALTER TABLESPACE test AD

15、D DATAFILE D:ORACLEtestdf01.dbfSIZE 5M REUSE AUTOEXTEND ON NEXT 2M MAXSIZE UNLIMITED;第七章填空题1、Oracle数据看用户口令认证可以采用(数据口令验证)、(外部验证)、(全局验证)认证等几种方式。2、Oracle数据库概要文件的主要用于(限制用户所使用的资源)、(管理账户状态和口令策略)等。3、Oracle数据库的中的权限分为(系统)和(对象)两种类型,向用户直接授权需要调用(grant)SQL语句。4、用户连接Oracle数据库后希望得到角色权限,这两种实现方法:一种方法是让管理员把角色设置为用户默认角色

16、,另一种方法是(启用角色),需要调用的SQL语句是(SET ROLE)。简答题1、简述用户通过默认角色和非默认角色获得权限有何异同。答:角色授予用户后,其默认为禁用状态,用户非默认角色在具备的权限必须启用角色才可以获得它所具有的权限用户默认角色在用户连接后被自动激活,所以用户不用显式启用角色就可以立即获得它们所具有的权限编程题创建一个用户testuser,要求第一次登录时必须修改口令,默认表空间设为test,临时表空间设为temp,并在表空间test和users上分别为他分配5M,10M的存储空间。Create user testuser Identified by 123456 Passwo

17、rd expire Default tablespace test Temporary tablespace temp Quota 5m on testQuota 10m on users;把创建会话、创建视图的系统权限,以及scott用户的dept表和emp表上的增、删、改、查的对象权限授予用户testuser。Grant create session, create view to testuser;Grant insert,delete,update,select on scott.dept to testuser;Grant insert,delete,update,select on

18、 scott.emp to testuser;创建一个角色testrole,不需要口令验证;把创建会话的系统权限授予该角色。Create role testrole not identified;Grant create session to testrole;将testuser用户修改密码为1234;并撤销他的创建视图的系统权限。Alter user testuser identified by 1234;Revoke create view from testuser;将自己名字(考生姓名的全拼)的用户的默认表空间改为test;并授予其连接预定义角色。Alter user xxx defa

19、ult tablespace test;Grant connect to xxx;创建一个角色myrole,密码为myrolepwd,将角色myrole授予connect, resource和unlimited tablespace权限。将用户test指定为角色myrole。Create role myrole identified by myrolepwd;Grant connect, resource, unlimited tablespace to myrole;Grant myrole to test;第八章选择题1、不能使用currval或nextval属性的是(D)A、查询语句的S

20、ELECT选择列表B、UPDATE语句的SET子句中C、INSERT语句的VALUES子句中D、任何SQL语句中都可以使用2、创建一个序列用于主键值,则在创建序列时不应该指定(B)参数。A、CACHE 20 B、CYCLE C、MINVALUE 2 D、MAXVALUE 10003、公有同义词由(A)用户组拥有。A、public B、SYS C、DBA D、SYSTEM简答题1、试说明创建序列时,设置CACHE 20 和NOCACHE的区别。区别:Cache 20和nocache指出数据库是否在内存中预分配一定数量的序列值进行缓存,预分配序列值可以加快访问速度,提高性能; nocache为不缓

21、存,若设置为nocache,则访问速度较慢,性能无法提高2、使用同义词有哪些好处?答:可以简化SQL语句的书写,还可以提供位置透明性,当然数据库对象改变时,只需修改同义词而不需要修改应用程序。编程题创建一个序列test_seq,该序列的起始值是1,最大值是2000,其他参数均采用默认设置。Create sequence test_seq Start with 1 Maxvalue 2000;创建一个序列books_seq,将该序列作为books表的主键,从1开始取值,最大值为10000,其他值均采用默认值。Create sequence books_seq Start with 1 Maxva

22、lue 10000 nocycle;第九章选择题1、创建表时,要指定该表存储的表空间为publish,应该使用(C)子句。A、CLUSTER B、STORAGE C、TABLESPACE D、INITRANS2、如果表中需要存储的数据为450.23,可以使用(D)数据类型定义列。A、INTEGER B、NUMBER C、NUMBER(5) D、NUMBER(5,2)3、以下关于为表添加虚拟列的说法中,正确的是(AD)。A、虚拟列通过引用表中的其他列来计算结果,而其中的数据没有保存在数据文件中B、虚拟列可以被DML语句修改C、不能对虚拟列创建索引D、可以对虚拟列创建主键约束4、在删除表中的列时,

23、使用UNUSED进行标记的作用是(BC)。A、对系统来说,被标记为UNUSED的列就是被删除了B、对系统来说,被标记为UNUSED的列依然存在,并占用存储空间C、对系统来说,被标记为UNUSED的列就像是被删除了,无法进行查询D、使用UNUSED标记的作用和直接使用DROP是一样的5、以下(CD)约束的定义不会自动创建索引。A、PRIMAR KEY B、UNIQUE C、NOT NULL D、FOREIGN KEY6、为列定义一个CHECK约束,要使用该约束对表中的数据(已经存储的和后续修改的)进行检查,则应该将约束设置为(B)状态。A、ENABLE NOVALIDATE B、ENVABLE

24、VALIDATE C、DISABLE NOVALIDATE D、DISABLE VALIDATE7、Oracle Database 11g新增的分区方法有(BD)。A、范围分区 B、间隔分区 C、复合分区 D、引用分区8、外部表的访问驱动方式包括(AB)。A、ORACLE_LOADER B、ORACLE_DATAPUMP C、JDBC D、DATA PUMP简答题1、Oracle数据库中有哪些类型的表?各有什么特征?堆组织表:数据以堆得方式管理索引组织表:按照索引结构存储数据的表聚簇表:一个或多个表组成的组,这些表物理的存储在相同的数据块上有相同聚簇键值的所有行会相邻的物理存储。嵌套表:是表中

25、之表,是系统生成和维护父/子关系中的子表临时表:是事务处理期间或会话期间的临时数据,当事务处理完毕或会话结束,临时表中的数据就被删除外部表:数据不存储在数据库本身, 而是放在数据库之外的文件系统中分区表:将一个非常大的表分成若干个独立的较小的组成部分进行存储和管理对象表:基于对象类型创建的表,而不是作为列的集合2、表的约束有几种?分别起什么作用?主键约束(primary key):确保一个表中没有重复的主键值的数据行唯一性约束(unique):确保表中值为非空的某列或列的组合具有唯一值检查约束(check):限制列的取值范围,利用该约束可以实现对数据的自动检查外键约束(foreign key)

26、:使数据库中表与表之间建立父子关系,定义子表中列的取值只能是父表中参照的值,或者为空。非空约束(not null):限制列的取值不能为空,一个表中可以定义多个非空约束。4、约束的状态有几种?如何保证数据库表中数据满足约束条件? 1.激活检查状态2.激活非检查状态3.禁用检查状态4.禁用非检查状态如何保证:对表中的约束都采用oracle数据库默认的状态设置,即enable validate编程题按下列表结构的定义,利用SQL语句创建class表,存储于test表空间。class列 名数 据 类 型约 束备 注CNONUMBER(2)主键班号CNAMEVARCHAR2(20)非空班名PNNAMEV

27、ARCHAR2(30)非空专业名NUMNUMBER(3)人数DNONUMBER(2)所属学院Create table class(CNO NUMBER(2) primary key,CNAME VARCHAR2(20) not null,PNNAME VARCHAR2(30) not null,NUM NUMBER(3),DNO NUMBER(2),)tablespace test;根据上面表结构的定义(表已存在),利用SQL语句修改class表,为其DNO添加一个外键约束,它参照DEPT表的DNO列,要求定义为级联删除。ALTER TABLE classADD CONSTRAINT E_FK

28、 FOREIGN KEY (dno)REFERENCES dept(dno) ON DELETE CASCADE;按下列表结构的定义,利用SQL语句创建student表,存储于test表空间。student列 名数 据 类 型约 束备 注SNONUMBER(4)主键学号SNAMEVARCHAR2(10)唯一姓名SAGENUMBER年龄SEXCHAR(2)性别CNONUMBER(2)班级号Create table student(SNO NUMBER(4) primary key,SNAMEVARCHAR2(10)unique,SAGENUMBER,SEX CHAR(2),CNO NUMBER(

29、2))tablespace test;根据上面表结构的定义(表已存在),利用SQL语句修改student表,为student表的SAGE列添加一个检查约束,保证该列取值的取值范围是0100。alter table student add constraint check(sage between 0 and 100);或:alter table student add constraint check(sage0);P179课后习题实训题1创建表books和orders第十章选择题1、在Oracle数据库系统中,最常使用的索引是(A)。A、B-树索引 B、位图索引 C、反向键值索引 D、文本索

30、引2、创建位图索引时要使用(B)关键字。A、UNIQUE B、BITMAP C、REVERSE D、SORT3、清除索引中的存储碎片,可以的索引进行(BC)操作。A、重命名 B、合并 C、重构 D、删除4、针对表中的主键约束和唯一性约束,Oracle系统会自动创建(D)索引。A、位图 B、反向键 C、文本 D、唯一B-树简答题1、简要分析B-树索引和位图索引的异同。答:B-树索引按照平衡树算法来构造索引,索引中的叶子结点保存索引键值和一个指向索引行的rowID信息位图索引不存储rowID值,也不存储键值,它用一个索引键条目存储指向多行的指针,即每个索引条目指向多行2、简要分析合并索引和重构索引

31、的区别。答:合并的操作只是将B-树索引的叶子节点中的存储碎片合并在一起,并没有改变索引的物理组织结构重构索引也可以清除存储碎片,并且重构操作可以改变索引的存储位置编程题在orders表的ordernum列上创建一个唯一性索引。CREATE UNIQUE INDEX ordernum_idx ON Orders(ordernum);在books表的bookname列上创建一个非唯一B-树索引,存储于users表空间。CREATE INDEX bookname_idx ON books(bookname) TABLESPACE USERS;在orders表的付款方式payterms列上创建一个位图

32、索引,存储于users表空间。CREATE bitmap INDEX payterms_idx ON orders(payterms) TABLESPACE USERS;第十一章选择题创建视图时使用(C)子句,可以限制对视图执行的DML操作必须满足视图子查询的条件。A、FORCE B、WITH OBJECT OID C、WITH CHECK OPTION D、WITH READ ONLY通过(B)数据字典,可以了解视图中有哪些列时可以更新的。A、USER_VIEWS B、USER_UPDATABLE_COLUMNS C、DESC D、DBA_VIEWS以下选项中,(C)不能使用CREATEVI

33、EW语句创建。A、关系视图 B、对象视图 C、内嵌视图 D、物化视图使用如下语句创建视图:Create view bo_viewASSELECT b.book_id,book_name,qty FROM book b,orders ord WHERE b.book_id=ord.book_id;则视图bo_view中(D)列时可以更新的。其实没有正确答案A、book_id B、book_id, book_name C、book_id,qty D、book_id, book_name,qty简答题简述视图的作用,它和表有什么区别和联系。作用:简化查询语句、实现安全和保密的目的。区别和联系:视图是

34、虚拟的表,它是查看表中数据的一种方式,并没有物理存储数据,不占用实际的存储空间,不包含任何数据编程题创建一个视图包含价格高于36.8元的图书ID、图书编号、出版社ID和出版社名称,并且限制对视图的DML操作必须满足子查询的条件。Create view book_viewAs select b.bookid,b.booknum,pubid,pubname From books b,publishers pWhere b.pubid=p.pubid and b.bookprice36.8 WITH CHECK OPTION;基于“图书”、“出版社”表创建一个视图bookview,包含“价格”高于3

35、5元的“图书ID”、“图书编号”、“出版社ID”、“出版社名称”,并且限制对视图不能进行DML操作。Create view bookview As select b.bookid,b.booknum,pubid,pubname From books b,publishers pWhere b.pubid=p.pubid and b.bookprice35 WITH READ ONLY;修改一个已有视图bookview,修改后的视图结构为:基于“图书”、“出版社”表创建一个视图,包含“价格”高于35元的“图书ID”、“图书编号”、“出版社名称”。Create or replace view bo

36、okviewAs select b.bookid,b.booknum ,p.pubname From books b,publishers pWhere b.pubid=p.pubid and b.bookprice 35 ;第十二章选择题下面合法的变量名是(AD)。A、v_bookid B、_bookid C、v_bvookid-01 D、v_bookid01在PL/SQL中,(B)类型的数据是以2的补码二进制格式存储。A、NUMBER B、BINARY_INTEGER C、INTEGER D、INT下列PL/SQL变量或常量声明语句中,正确的是(D)。A、v_id NUMBER(6);B、

37、v_name,v_name2 VARCHAR2(20);C、v_name CONSTANT VARCHAR2(20);D、v_name CONSTANT VARCHAR2(20):=MIKE;在简单循环控制结构中,退出循环的语句是(C)。A、CONTINUE B、BREAK C、EXIT D、GOTOPL/SQL中的复合类型有(ABCD)。A、联合数组 B、嵌套表 C、变长数组 D、记录类型Oracle系统为(BC)异常未提供错误代码,也没有定义异常名。A、预定义 B、非预定义 C、用户自定义 D、以上都不是简答题简述PL/SQL程序的结构及各个部分的作用。声明部分:声明变量和常量执行部分:使

38、用DML,select语句和事务控制实现块的功能异常处理部分:正确处理运行过程中出现的各种错误,并尽可能使程序从错误中恢复PL/SQL程序中异常出口的用途是什么?Oracle Database 11g 异常分为哪几类?举例说明用户自定义异常的处理过程。正确处理运行过程中出现的各种错误,并尽可能使程序从错误中恢复有名称的预定义异常无名称的预定义异常自定义异常1.在PL/SQL块的声明部分声明异常名称2.用伪编译指令EXCETION_INIT将异错误名与异常错误号关联起来3.引发异常,4.捕获异常并处理编程题为表books添加一列stars VARCHAR2(100),然后编写一个PL/SQL程序

39、块,根据图书的销售数量salescount计算图书能够获得的星号“*”数量(每100册获得一个“*”,按四舍五入处理),然后将该星号字符串写入books表的stars列。DECLARE v_num books.bookid%type :=1; v_stars books.stars%type; v_salescount books.salescount%type;BEGIN SELECT salescount INTO v_num FROM books WHERE bookid =v_num; v_num:=round(v_num/100); loop v_stars:= v_stars |*; v_num:=v_num-1; exit when v_num=0; end loop; update books set stars=v_stars WHERE bookid =v_num;END;编写一个PL/SQL程序块,计算从1累加到1000的值,结果输出:从1累加到1000

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论