Oracle 10g 数据库管理应用与开发 课后习题答案(填空与选择题)

更新时间:2024-03-07 10:20:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Oracle 10g 数据库管理应用与开发课后习题答案(填空与选择题) 填空题 第二章

1.用户对数据库的操作如果产生日志信息、则该日志信息首先被存储在日志缓冲区中,随后由LGWR进程保存到日志文件。

2.在Oracle的逻辑存储结构中,根据存储数据的类型,可以将段分为数据段、索引段、回退段、LOB段和临时段。

3.在多进程Oracle实例系统中,进程分为用户进程、后台进程和服务器进程。当一个用户运行应用程序,如PRO*C程序或一个Oracle工具(如SQL*Plus),系统将为用户运行的应用程序建立一个用户进程。 第三章

1.标准的SQL语言语句类型可以分为:数据定义语句(DDL)、数据操纵语句(DML)和数据控制语句(DCL)。

2.在需要滤除查询结果中重复的行时,必须使用关键字Distinct;在需要返回查询结果中的所有行时,可以使用关键字ALL。 第四章

1.创建一个UPDATE语句来修改ARTISTS表中的数据,并且把每一行的T_ID值都改成15,应该使用的SQL语句是update artists set t_id=15;。 2.使用describe命令可以显示表的结构信息。

3.使用SQL*Plus的get命令可以将文件检索到缓冲区,并且不执行。

4.当设置了多个列的显示属性后,如果清除设置的显示属性,可以使用命令clear column,而当要清除某列具体的显示属性时,需要使用命令OFF/column 列名 clear。

5.使用SAVE命令可以将缓冲区中的SQL命令保存到一个文件中,并且可以使用Start命令运行该文件。

6.要设置SQL*Plus显示数字时的格式可以使用NumFormat命令,而要设置某个数字列的显示格式要使用Column命令。 第五章

1.ROWID实际上保存的是记录的物理地址,

2.在STORAGE子句中可以设置6个存储参数。其中,Initial指定为表中的数据分配的第一个盘区的大小;Next指定为存储表中的数据分配的第二个盘区大小;Pctincrease指定从

第二个盘区之后,每个盘区相对于上一个盘区的增长百分比;Minextents指定允许为表中的数据所分配的最小盘区数目;Maxextents指定允许为表中的数据所分配的最大盘区数目。 3.通过数据块空间管理参数可以控制数据块中空闲空间的使用方法,其中Pctfree用于控制数据块的更新预留的空间,而Pctused用于控制数据块在删除时释放空间的门槛。 4.为Student表手动分配存储空间,并且大小由NEXT参数设置,则应使用的语句为Alter tableStudent allocate extent;;如果为Student表手动分配了一个大小为128KB的新盘区,则应使用的语句为Alter table Student allocate extent(size 128k);。

5.填写下面的语句,使其可以为Class表的ID列添加一个名为PK_CLASS_ID的主键约束。 Add constraintPK_CLASS_ID PRIMARY KEY(ID)

6.假设已经创建了CHAINED_ROWS表,填写下面的语句,以便对“业务员信息”表进行链接记录分析:

ANALYZE TABLE 业务员信息 List chained rows into chained_rows 第六章。

1.自然连接为具有相同名称的列自动进行记录匹配,它不必指定任何同等连接条件。 2.集合运算符UNION实现了集合的并运算,操作INTERSECT实现了对集合的交运算,而MINUS则实现了减运算。

3.使用关键字连接子查询时,EXISTS关键只注重子查询是否返回行, 第七章

1.PL/SQL程序块主要包含3个主要部分:声明部分、可执行部分和异常处理部分。 2.自定义异常必须使用raise语句引发。

3.查看操作在数据表中所影响的行数,可通过游标的%RowCount属性实现。 第八章 第九章

1.为了建立外部表,首先需要指示数据文件在操作系统上的位置。现在假设在操作系统的F:\\DATAFILE文件夹中存有一个数据文件,使用create directory exterior_data as 'F:\\DATAFILE';语句使Oracle可以访问数据文件。

2.在使用CREATE TABLE 语句创建索引组织表时,必须使用organization index子句指示创建的表为索引组织表,并且为索引组织表指定主键。

3.PCTTHRESHOLD指定一个数据块的百分比,当一行中的数据占用空间大于这个百分比时,该行将被分隔到两个位置存储:主键列被存储在基本索引段中,所有其他列被存储在溢出段中。

4.Oracle中的临时表可以分为事务级临时表和会话级临时表,创建事务级别的临时表,需要使用on commit delete rows子句;创建一个会话级别的临时表,则需要使用on commitpreserver rows子句。

5.在创建对象类型时,用户不必特意创建构造函数,它由系统隐式创建,名称与对象类型的名称相同,并且它会接收对象类型的所有属性作为它的参数。

6.如果用户想要对对象类型的实例进行比较排序,则需要使用映射方法Map,它最重要的一个特点是:当在WHERE或ORDER BY 等比较关系子句中使用对象时会被间接地使用。 7.有两种方法向对象表添加数据:一种是像关系表一样在INSERT的VALUES子句中,为对象的每个属性提供值,隐式地创建对象类型实例,向对象表添加数据;另一种方式是显式地创建对象实例,然后再将它添加到对象表。

8.Oracle数据库提供对表或索引的分区方法有5种:范围分区、散列分区、列表分区、组合范围散列分区和组合范围列表分区。

9.簇是一种用于存储数据表中数据的方法。簇实际是一组表,由一组共享相同数据块的多个表组成。 第十章

1.B树索引可以是唯一的或者不唯一的,唯一的B树索引可以保证索引列上不会有重复的值。 2.在为表中某个列定义PRIMART KEY约束PK_ID后,则系统默认创建的索引名为PK_ID。 3.如果表中某列的基数比较低,则应该在该列上创建位图索引。

4.如果要获知索引的使用情况,可以通过查询V$OBJECT_USAGE视图;而要获知索引的当前状态,可以查询Index_Stats视图。

第十一章

1.在不为视图指定列名的情况下,视图列的名称将使用表列的名称。

2.视图与数据库中的表非常相似,用户也可以在视图进行INSERT、UPDATE、和DELETE操作。通过视图修改数据时,实际上是在修改基本表中的数据;相应地,改变基本表中的数据也会反映到该表产生的视图中。

3.视图是否可以更新,这取决于定义视图的SELECT语句,通常情况下,该语句越复杂,

创建的视图可以更新的可能性也就越小。

4.下面的语句创建了一个序列对象,该序列对象的开始数为2,每次递增2,当大于1000后,序列值重新返回到2.在空白处填写适当的代码,完成上述要求。 Create sequence seg_test Start with 2 Increment by 2 Maxvalue 1000 Cycle; 第十二章

1.假设有一个表TEST,它仅包含一个字段DATA。现在创建一个触发器,实现将添加的数据变大写。在下面的空白处填写适当的语句,使之可以正常运行。 Create or replace trigger test_trigger After insert on TEST for each row Begin

:new.data:=upper(:new.data); End;

2.BEFORE和AFTER指定了触发器的触发时间。当为一个表配置了约束时,它们将会特别有用,BEFORE可以规定Oracle在应用约束前调用触发器,而AFTER规定在应用约束后调用触发器。

3.假设有一个名为ACTION_TYPE的表,它记录了对STUDENT表的操作。在空白处填写适当的代码,完成上述功能。

Create or replace trigger biud_student_trigger Before insert or update or delete on student Declare

Action action_type.type%type; Begin

ifinserting then action:='INSERT'; elsifupdating then action:='UPDATE'; elsifdeleting then action:='DELETE'; end if;

insert into action_type value(user,action); End; 第十三章

1.在设置事务隔离层时,需要使用关键字set transaction。

3.可以用SET CONSTRAINT constraint_name DEFERRED语句,启用某个约束的延期应用,而使用SET CONSTRAINT ALL DEFERRED语句可以设置本事务中所有约束的延期应用;语句SET CONSTRAINT ALL IMMEDIATE可以设置约束的应用。

4.在众多的事务控制语句中,用来撤销事务的操作的语句为ROLLBACK,用于持久化事务对数据库操作的语句是COMMIT。

5.当Oracle检测到死锁后,它会选择一个事务退出。选择退出事务的原则是执行修改数目最小的事务。

6.锁粒度与数据库系统的并发度和并发控制的开销密切相关。锁粒度越大,数据库中所能够使用的资源也就越少,并发度也就越小,系统开销也就越小。 7.当对某个表加SRX锁时,则表中行的锁类型为DML锁。 第十四章

1.如果要获取数据库中创建的配置文件的信息,可以通过查询数据字典视图DBA_profiles。 2.在Oracle数据库中将权限分为两类,即系统权限和对象权限。系统权限是指在系统级控制数据库的存取和使用机制,对象权限是指在模式对象上控制存取和使用的机制。 3.角色是具有名称的一组相关权限的组合。 4.连接到数据库的最低系统预定义角色是connect。

5.在用户连接到数据库后,可以查询数据字典role_sys_privs了解用户所具有的系统权限。 第十五章

1.表空间的管理类型可以分为数据字典管理和本地化管理。

2.在Oracle的早期版本中,对撤销信息的管理采用手动管理撤销,从Oracle 9i后采用自动撤销管理方式管理撤销信息。

3.一个表空间具有离线(OFFLINE)、在线(ONLINE)、只读(READ ONLY)、读写(READWRITE)状态。

4.在创建UNDO表空间时,所使用的表空间管理方式为本地化管理,并且盘区的管理方式只允许使用AutoAllOcate方式。

5.在创建本地化管理临时表空间时,不得指定盘区的管理方式为AutoAllOcate,临时表空间

3.检查下面的SQL语句,哪一项是错误的? B Alter user tempuser identified by oracle default tablespace users default temporary tablespace temp quota 100M on users;

A.default tablespace users B.default temporary tablespace temp C.quota 100M on users D.identified by oracle 4.下面哪一个不是系统权限? C A.SELECT TABLE B.ALTER TABLE C.SYSDAB D.CREATE INDEX 5.想在另一个模式中创建表,用户最少应该具有什么系统权限? B A.CREATE TABLE B.CREATE ANY TABLE C.RESOURCE D.DBA

6.用户查询下列哪一个数据字典视图,可以查看他向其他用户授予的对象权限? C A.DBA_SYS_PRIVS B.USER_TAB_PRIVS_MADE C.USER_TAB_PRIVS D.USER_OBJ_PRIVS

7.下面哪个系统预定义角色允许一个用户创建其他用户? B A.CONNECT B.DBA C.RESOURCE D.SYSDBA 8.如果要启用所有角色,则应该使用哪一个命令? A A.SET ROLE ALL B.SET ROLE ENABLE ALL C.ALTER SESSION ALL D.ALTER USER ROLE ALL 第十五章

2.把一个表空间切换到OFFLINE状态时,可以使用4个参数,不包括下列哪一个选项? D A.IMMEDIATE B.NORMAL C.TEMPORARY D.FORCE

3.在设置撤销表空间的自动管理功能时,DBA通过使用相关的初始化参数对自动撤销表空间进行配置。下面的4个参数中,哪一个不是与自动撤销管理功能相关的参数? D A.UNDO_MANAGEMENT B.UNDO_TABLESPACE C.UNDO_RETENTION D.TRANSACTIONS

4.下面哪一个参数不能在STORAGE子句中进行设置? B A.INITIAL B.PCTUSED C.MINEXTENTS D.NEX

5.在设置自动撤销管理时,下列 B 参数用于设置所使用的撤销表空间, C 参数用于设置撤销数据的保留时间。

A.UNDO_MANAGEMENT B.UNDO_TABLESPACE C.UNDO_RETENTION D.ROLLBACK_SEGMENTS

本文来源:https://www.bwwdw.com/article/cdpa.html

Top