ORACLE11g试题答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

. .. .
目录
第一章Oracle 11g 介绍 (2)
第二章ORACLE 11g 的体系结构 (4)
第三章ORACLE 11g 的数据库管理 (8)
第四章ORACLE 11g 的表空间管理 (10)
第五章ORACLE 11g 的表管理 (13)
第六章ORACLE 11g 的数据查询 (18)
第七章ORACLE 数据的基本操作 (23)
第八章索引 (28)
第九章视图 (33)
第十章PL/SQL基础 (37)
第十一章存储过程与函数 (43)
第十二章触发器 (48)
第十三章游标 (51)
第十四章安全管理 (54)
第十五章数据库备份与恢复 (57)
. .资料. ..
第一章Oracle 11g 介绍
一、选择题
1.在数据库系统中,将满足以下两个条件的基本层次联系集合称为层次模型:( B )。

①有一个结点无双亲②其它结点无双亲
③有且仅有一个结点无双亲④其它结点有且仅有一个双亲
⑤允许其它结点有多个双亲
A.①和②B.③和④
C.③和⑤D.②和⑤
2.下列有关数据库的描述,正确的是( C )
A.数据库是一个DBF文件
B.数据库是一个关系
C.数据库是一个结构化的数据集合
D.数据库是一组文件
3.根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:( B )
A.只存在一对多的实体关系,以图形方式来表示。

B.以二维表格结构来保存数据,在关系表中不允许有重复行存在。

C.能体现一对多、多对多的关系,但不能体现一对一的关系。

D.关系模型数据库是数据库发展的最初阶段。

4.Oracle 11g 是基于( A )的
A.关系型
B.文件系统
C.层次型
D.网络型
5. 用二维表结构表达实体集的模型是(D )
A.概念模型B.层次模型
C.网状模型D.关系模型
6.下列四项中说法不正确的是(C )
A.数据库减少了数据冗余
B.数据库中的数据可以共享
C.数据库避免了一切数据的重复
D.数据库具有较高的数据独立性
7.下列四项中,不属于关系数据库特点的是(D)
A.数据冗余小
B.数据独立性高
C.数据共享性好
D.多用户访问
下面系统中不属于关系数据库管理系统的是(C )
A. Oracle
B. MS SQL Server
C. IMS
D. DB2
9.MS SQL Server是(D )
A. 数据库
B. 数据库系统
C. 数据处理系统
D. 数据库管理系统
二、填空题
1.在数据库系统中管理数据的软件称为___数据库管理系统________。

2. 数据库中数据模型可分为三种类型:层次模型、网状模型和关系模型。

3.用树型结构表示实体类型及实体间联系的数据模型称为__层次模型__。

4.数据库系统各类用户对数据库的各种操作请求(数据定义、查询、更新及各种控制)都是由
2
. .. .
一个复杂的软件来完成的,这个软件叫做__数据库管理系统___。

三、简答题
1.解释什么是Oracle Database 11g系统中关键网格技术?
解:
Oracle 11g中“g”是grid的缩写,表示网格,网格计算是一种技术,能对同源不同计算类型的分布式网络进行无缝地、大规模地扩展,允许不同厂商的计算机共同工作来提供无尽的共享计算机资源。

比如,有两台PC机,分别来自不同厂商,存均为516M,现系统运行要求1G的存,若PC机单独执行肯定不能满足要求,可以通过网格计算和集群技术将两台PC 机组合在一起,以满足系统运行需求。

2.解释Oracle Database 11g的基本文件目录的含义?
解:
在Oracle Database 11g中,Oracle的目录结构是由Oracle_Base及其子目录Oracle_Home、admin、flash_recovery_area和oradata目录构成的。

为方便讨论,用Oracle_Base代表Oracle 目录树的根,用Oracle_Home表示根目录下的主目录。

(1)Oracle_Base目录
Oracle_Base代表Oracle目录树的根。

如果使用Oracle Universal Installer进行安装,则Oracle_Base是指system_drive:\oracle\product\10.2.0。

(2)Oracle_Home目录
Oracle_Home主目录位于system_drive:\Oracle_Base之下,它包含与Oracle软件运行有关的子目录和网络文件以及选定的组件等;若在主机上第一次且只安装了Oracle数据库,没有其他Oracle产品,则使用默认的主目录\db_1;如果在同一台主机的同一个根目录下安装多个产品或安装了第2次,则Oracle_Home主目录会以db_n的形式出现,即db_2、db_3等。

这也是为什么在Oracle_Base目录可以有多个Oracle_Home目录的缘故。

Oracle_Home目录中包括的主要子目录有:
·\BIN——主要包含用于数据库管理的各种命令等。

·\css——与Oracle Cluster Synchronization服务有关的文件。

·\dbs——存放数据库服务器端的参数文件Spfile。

·\demo——存放数据库实例模式的脚本等。

· \install——用于存储ORACLE安装后的端口号,iSQL*Plus以及Enterprise Manager Database Control启动并登录的方式等。

·\network\admin——有关监听器listener.ora和sqlnet.ora以及tnsnames.ora等。

·\sysman\config——用于与Oracle Enterprise Management有关的端口管理等。

(3)admin目录
数据库管理文件均存储在oracle_base\admin\db_name目录下。

各个子目录的主要含义如下:
·\bdump——后台进程跟踪文件。

·\cdump——信息转储文件(core dump)。

·\create——数据库创建文件。

. .资料. ..
·\exp——数据库导出文件。

·\pfile——初始化参数文件。

·\udump——用户SQL追踪文件。

(4)Oradata目录
数据库文件存储在Oracle_Base\oradata\db_name目录下,该目录主要存储数据库的控制文件、数据文件、重做日志文件。

其中*.dbf文件对应数据库中每个表空间;.ctl文件为控制文件;.log文件对应重做日志文件组及其成员。

(5)flash_recovery_area目录
flash_recovery_area目录存储并管理与备份和恢复有关的文件。

它包含系统中每个数据库的子目录。

该目录可用于存储与恢复有关的文件,如控制文件、联机重做日志副本、归档日志、闪回日志以及Oracle数据库恢复管理器(RMAN)备份等。

3. 解释$ORACLE_HOME和$ORACLE_BASE的区别?
解:
$ORACLE_BASE下是admin和product;$ORACLE_HOME下则是ORACLE的命令、连接库、安装助手、listener等。

$ORACLE_HOME比$ORACLE_BASE目录要更深一些,ORACLE_HOME=$ORACLE_BASE/product/version。

$ORACLE_BASE是oracle的根目录,$ORACLE_HOME是oracle产品的目录。

如果装了2个版本的oracle,那么$ORACLE_BASE 可以是一个,但$ORACLE_HOME是2个。

第二章ORACLE 11g 的体系结构
一、单项选择题
1.( A )是Oracle服务器在启动期间用来标识物理文件和数据库结构的二进制文件。

A.控制文件 B.参数文件 C.数据文件 D.日志文件
2.( B )进程主要职责是监控服务器进程和注册数据库服务。

A.SMON
B.PMON
C.CHKT
D.LGWR
3.( C )代表了数据库中最小粒度的逻辑数据存储层次。

A.盘区
B.表空间
C.数据块
D.数据文件
4.用于在启动实例时配置数据库,确定Oracle 11g的运行环境文件是( A )
A.参数文件
B.数据文件
C.可执行文件
D.控制文件
4
. .. .
5.下列选项中,哪一部分不是Oracle实例的组成部分?( C )
A.系统全局区SGA
B.PMON后台进程
C.控制文件
D.Dnnn调度进程
6.在全局存储区SGA中,哪部分存区域是循环使用的?( B )
A.数据缓冲区
B.日志缓冲区
C.共享池
D.大池
7.解析后的SQL语句在SGA的哪个区域中进行缓存?( C )
A.数据缓冲区
B.日志缓冲区
C.共享池
D.大池
8.如果服务器进程无法在数据缓冲区中找到空闲缓存块,以添加从数据文件中读取的数据块,则将启动如下哪个进程?( A )
A.DBWR
B.LGWR
C.SMON
D.PMON
9.如果服务器进程非正常终止,Oracle系统将使用下列哪一个进程以释放它所占用的资源?( D )
A.DBWR
B.LGWR
C.SMON
D.PMON
10.下列哪个进程用于将修改过的数据从存保存到磁盘数据文件中?( A )
A.DBWR
B.LGWR
C.RECO
D.ARCH
11.当数据库运行在归档模式下时,如果发生日志切换,为了保证不覆盖旧的日志信息,系统将启动哪个进程?( D )
A.DBWR
B.LGWR
C.SMON
D.ARCH
12.下面哪个描述是正确的?( A )
A.表空间由段组成,段由盘区组成,盘区由数据块组成。

B.段由表空间组成,表空间由盘区组成,盘区由数据块组成。

C.盘区由数据块组成,数据块由段组成,段由表空间组成。

D.数据块由段组成,段由盘区组成,盘区由表空间组成。

二、填空题
1.在Oracle 11g的文件系统中包含多种类型的文件,这些文件是数据文件、控制文件、日志文件、参数文件、口令文件、跟踪文件、警告日志文件等。

2.一般地,Oracle的后台进程包括数据写入进场DBWR 、日志写入进场LGWR 、检查点进程CKPT 、系统监控进场SMON 、进程监控进场PMON 、归档进程ARCH 、恢复进程RECO、封锁进程LCKn、调度进程Dnnn、服务器进程Snnn、作业进程SNP等。

3.一个表空间物理上对应一个或多个数据文件。

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

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

6.Oracle数据库由一个或多个称为表空间的逻辑存储单元组成。

7. 存结构是指一个进程在其中进行自身对话或与其他进程对话的存区域,Oracle使用两种类型的存结构,一种是SGA ;另一种是PGA 。

8. 数据字典试图分成3类:DBA_、ALL_ 和USER_ 视图,DBA_视图包含了数据库所有对象的信息, ALL_视图包含了用户查询表时可以访问的所有对象的信息, USER_ 视图包含了用户查询表时表所拥有的全部对象的信息。

. .资料. ..
三、问答题
1.简要介绍数据文件、表空间、段、盘区和数据块之间的关系。

解:
每一个数据文件都必须隶属于某个表空间但一个表空间可以由多个数据文件组合而成。

Oracle 的逻辑存储单元从小到大依次为数据块、区、段和表空间。

表空间又由许多段组成段由多个区组成区又由多个数据块组成。

2.简要描述Oracle数据库体系的物理结构。

解:
Oracle数据库体系的物理结构是指数据库上实际的、可以从操作系统看到的文件,可以利用操作系统指令进行管理作业,物理存储结构组成文件如下所列:
(1)数据文件(Data File):实际存储数据的地方;
(2)在线重做日志文件(Online Redo Log File):记录曾经发生过的动作当数据库受损时可利用在线重做日志文件进行必要的恢复动作;
(3)控制文件(Control File):记录数据库必要的信息以验证及维护数据库的完整性的信息;
(4)初始化参数文件(Parameter File):当数据库开启时用来架构出Oracle存结构的文件;
(5)密码文件(Password File):验证哪些能开启、关闭Oracle数据库。

3.介绍Oracle实例系统中,各后台进程的作用。

解:
(1)DBWRn(Database Writer)的主要工作是将数据缓冲区中被改过的数据写回到数据文件里;
(2)LGWR(Log Writer)主要的工作是将Redo Log Buffer里的记录写到在线重做日志文件中;
(3)SMON(System Monitor)有两个主要的功能。

<1>执行Instance Recovery:当数据库不正常中断后再度开启时,SMON会自动执行Instance Recovery,也就是会将在线重做日志里面的数据回写到数据文件里面。

<2>收集空间:将表空间相邻的空间进行合并的动作;
(4)PMON(Process Monitor):监视数据库的用户进程。

若用户的进程不当而被中断,PMON会负责清理任何遗留下来的资源,并释放失效的进程所保留的锁,然后从Process List 中移除,以终止Process ID;
(5)CKPT(Checkpoint)主要负责更新数据库的最新状态,CKPT当Checkpoint 完成时会更新控制文件和数据库文件的文件头;
(6)ARCn(Archiver)当Oracle数据库设定为ARCHIVELOG Mode时,ARCn 会在Log Switch时自动将Redo Log File复制一份到指定的目录下称为归档日志文件Archivedredologs。

6
. .. .
4.数据字典包含了哪些信息?具有什么功能?
解:
数据字典是Oracle数据库的核心组件,它是由一系列只读的基础表和视图组成的,它保存了关于数据库本身以及其中存储的所有对象的基本信息。

对数据字典的管理和维护由Oracle系统负责,任何数据库用户都无法对数据字典中容进行修改,但是可以查看数据字典的容。

为了方便用户查看数据字典中的信息,数据字典中的信息通过表和视图的形式组织起来。

数据字典中的容都被保存在System表空间中,大多数情况下,用户可以通过数据字典视图来获取与数据库相关的信息,而不需要访问数据字典表。

用户所使用的数据字典视图大致分为三类,并且各种类型的视图以不同名称的前缀表示。

这三类视图如下:
(1)USER视图是以USER_字符为名称前缀的数据字典视图。

每个数据库用户都有一组属于自己的视图,在USER视图中包含了该用户模式下所有对象的信息。

(2)ALL视图ALL视图是以ALL_字符为名称前缀的数据字典视图。

ALL数据字典视图是USER视图的扩展,在ALL视图中记录了属于该用户模式的所有对象的信息以及该用户可以访问的属于其他模式的对象的信息。

(3)DBA视图DBA视图是以DBA_字符为名称前缀的数据字典视图。

在DBA数据字典视图中记录了全部数据库对象的信息。

5.在确定数据块大小(DB_BLOCK_SIZE)的时候,要注意考虑哪些因素?
解:
如果行很小,而且访问是随机的,则应选用较小的块;
如果行很小,而且访问是顺序的,则应选用较大的块;
如果行很小,而且访问既是随机又是顺序的,那么就应该选用较大的块;
如果行很大,应该选用较大的块。

6. PctUsed和PctFree 表示什么含义,有什么作用?
解:
PctUsed:为一个百分比数值,当BLOCK中已经使用的空间降低到该数值以下时,该BLOCK才是可用的,达到或是超过这个数值的BLOCK是不可用的。

PctFree:用于指定BLOCK中必需保留的最小空间的比例。

一般在控制具有独立segment结构的对象时,可使用PctFree和PctUsed参数控制数据块何时进入或离开表、索引或簇的可用清单。

使用PctUsed参数设置最小块的阈值来控制一个数据块应在何时放回到相应段的可用清单中。

例如,所有段的缺省PctUsed设置为40%,因此,当事务处理删除数据块中的行时,如果它只有39%是装满的,ORACLE将该数据块放回到相应段的可用清单中。

如果你预计很少有删除操作,则可设置PctUsed为较高的值(如60),当偶然的删除操作发生时,使数据块弹出可用清单。

但是,如果你预计将PctUsed 设置为较低的值(如40),使ORACLE不常产生块在表的可用空间中移进或移出的开销。

使用PctFree参数设置最大的阈值,以控制对将来的行的更新操作保留多少数据块空间。

. .资料. ..
当某个数据块使PctFree装满时,ORACLE从相应段的可用清单中删除该块。

如果你预计只有很少的更新操作会增加行的大小,则可将PctFree设置为较低的值(如5或者10),使得ORACLE 填满每个块的更多的空间。

但是,如果你预计更新操作将会经常增加行的大小,则将PctFree 设置为较高的值(如20或30),使得ORACLE为已有行的更新操作保留更多的块空间;否则,将出现行链。

7.SGA主要有那些部分,主要作用是什么?
解:
(1)数据高速缓冲区:存放着Oracle系统最近使用过的数据库数据块;
(2)共享池:相当于程序高速缓冲区,所有的用户程序都存放在共享SQL池中;
(3)重做日志缓冲区:用于缓冲区在对数据进行修改的操作过程中生成的重做记录。

第三章ORACLE 11g 的数据库管理
一、单项选择题
1.下列哪个部分不是oracle实例的组成部分?(C )
A.系统全局区域
B. 服务器进程
C.数据库作者
D.系统监控器
2.你用DBCA建立了一个数据库而没有保存模版定义。

现在你打算用DBCA拷贝整个数据库和数据,下列哪个是首先要做的?(D )
A.使用脚本建立新的数据库,使用DBCA导入数据
B.用DBCA模版管理从现有数据库建立一个新的数据库,数据也如此导入
C.从模版列表中选择先前建立的数据库模版并建立数据库
D.从现有数据库中拷贝数据文件建立新的数据库,然后利用DBCA拷贝数据
3. 你正在你的组织紧急事件处置演习中。

几乎没有时间通报用户,你就需要尽快地停止数据库进程。

下列命令哪个是你需要要执行的?(D )
A. shutdown abort
B. shutdown transactional
C. shutdown
D. shutdown immediate
4. 你正在用共享服务器管理一个数据库。

Large_pool_size是50M。

你执行命令:alter system set Large_pool_size=100M scope=memory后然后关闭并重启数据库。

现在Large_pool_size是多少?(A )
8
. .. .
. .资料. ..
A. 50M
B. 默认Large_pool_size 大小
C. 100M
D.和使用中的oracle SPfile 设置的一样
5. 你使用下列命令连接数据库:sqlplus scott/triggerabc.:1522/orcl.目标数据库是哪一个?( A )
A. abc.
B.tiger
C. orcl
D. scott
E. 以上都不是
6. 下列哪个不是有效的数据库状态?( A )
A. 开机
B. 关闭
C. 启动
D. 装载
E. 不装载
7. 如果一个数据库举例(instance)失败,但是没有停止运行,你必须使用哪个命令使实例恢复能被执行?( B )
A.startup nomount
B. shutdown immediate; start force
C.startup mount
D.shutdown abort; startup
8. Oracle 数据库由一个或多个称为()的逻辑存储单元组成。

( B )
A.表
B.表空间
C.行
D.单元
二、填空题
1. 如果用户需要在已经安装好了的Oracle 系统上创建,修改或者删除数据库,就需要使用 DBCA 。

2. 启动数据库时,如果装载数据库但打不开数据库可执行 STARTUP MOUNT 命令。

3. 采用终止模式关闭数据库,可执行 SHUTDOWN ABORT 命令。

4. 数据库的初始化参数DB-NAME 的长度最大可为 8 个字符。

5. 数据库实例 ,也被称作数据库服务或服务器,是一组操作系统进程和存区域.Oracle 使用他们来管理数据库访问。

6.每个Oracle 11g 数据库在创建后都有4个默认的数据库用户: system 、 sys 、 sysman 和DBcnmp 。

7. 字符集中的NLS-LANG 参数包含3个组成部分:
8.可通过在SQL*Plus 中查询动态视图 VINSTANCE 来查看实例的禁止操作状态。

三、问答题
1. Oracle 数据库在创建后都会有4个默认数据库用户,简要说明它们的功能?
解:
4个默认的数据库用户分别为:SYS 、SYSTEM 、SYSMAN 和DBSNMP 。

(1)SYS ,默认密码为CHANGE_ON_INSTALL,当创建一个数据库时,SYS 用户将被默认创建并授予DBA 角色,所有数据库数据字典中的基本表和视图都存储在名为SYS 的方案中,这些基本表和视图对于Oracle 数据库的操作时非常重要的。

为了维护数据字典的真实性,SYS 方案中的表只能由系统来维护,他们不能被任何用户或数据库管理员修改,而且任何用户不能在SYS 方案中创建表;
(2)SYSTEM ,默认密码为MANAGER ,与SYS 一样,在创建Oracle 数据库时,SYSTEM 用户被默认创建并被授予DBA 角色,用于创建显示管理信息的表或视图,以及被各种Oracle 数据库应用和工具使用的容表或视图;
(3)SYSMAN 是Oracle 数据库中用于EM 管理的用户,如果你不用该用户,也可以删除。

(4)DBSNMP是Oracle数据库中用于智能代理(Intelligent Agent)的用户,用来监控和管理数据库相关性能的用户,如果停止该用户,则无法提取相关的数据信息。

2. 如何转换init.ora到spfile ?
解:
使用Create spfile from pfile命令。

3. 给出数据库正常启动所经历的几种状态?
解:
(1)STARTUPNOMOUNT–数据库实例启动;
(2)STARTUPMOUNT-数据库装载;
(3)STARTUPOPEN–数据库打开。

第四章ORACLE 11g 的表空间管理
一、单项选择题
1. 对于系统表的空间,Oracle建议的大小是( D )
A.100M B. 200M C.300M D.400M E.500M
2. 下列动态视图中,( C )是从控制文件中得到的所有表空间的名称和数量。

A.V$INSTANCE B.V$DATABASE C.V$TABLESPACE D.V$DATAFILES
3. 如果一个表空间脱机在哪里查看?( B )
A. dba_tablespaces
B. v$ tablespaces
C. v$database
D. dba_datafile_status
4.下面哪个参数不能在STORAGE子句中进行设置( B )
A. INITIAL
B. PCTUSED
C. MINEXTENTS
D. NEXT
5.Oracle数据库的最小I/O单位是( D ),最小磁盘分配单位是( C )
A. 表空间
B. 段
C. 盘区
D. 数据块
6.在设置自动撤消管理时,下列( B )参数用于设置所使用的撤消表空间,( C )参数用于设置撤消数据的保留时间。

10
. .. .
A.UNDO_MANAGEMENT
B. UNDO_TABLESPACE
C.UNDO_RETENTION
D. ROLLBACK_SEGMENTS
7.把一个表空间切换到OFFLINE状态时,可以使用4个参数,不包括下列哪个选项?( D )
A.IMMEDIATE
B.NORMAL
C.TEMPORARY
D.FORCE
8.在设置撤消表空间的自动管理功能时,DBA通过使用相关的初始化参数对自动撤消表空间进行配置。

下面的4个参数中,哪一个不是与自动撤消管理功能相关的参数?( D )
A.UNDO_MANAGEMENT
B. UNDO_TABLESPACE
C.UNDO_RETENTION
D. TRANSACTIONS
二、填空题
1.表空间是Oracle数据库中数据的逻辑组织,每个数据库至少有一个系统表空间。

2.表空间是O racle数据库中数据的逻辑组织,它存储段的集合,在操作系统级映到一个或多个数据文件上。

3.创建表空间时Oracle允许指定后来创建的,并分配给表空间的对象的默认存储参数。

其中INITIAL 参数设置创建时分配给每一个新对象的初始区间的大小。

4. 创建表空间时,创建表空间的对象的默认存储参数中,INITIAL参数和NEXT 参数通常大小相同。

5.DBA-TS-QUOTAS 动态视图中列举了所有用户的表空间配额。

6. DBA_FREE_SPACE视图用来判断tablespace的剩余空间。

7.表空间的管理类型分为本地管理表空间(LMT)和数据字典管理表空间(DMT)。

8.一个表空间具有离线(OFFLINE)、在线(ONLINE)、只读(READ ONLY)和读写(READ WRITE)。

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

三、问答题
1.TEMPORARY表空间和PERMANENT 表空间的区别是什么?
解:
(1)永久性表空间(Permanent)
用户需要保留的任何段和一个会话或事务的应用数据都保留在永久性表空间,如SYSTEM 和SYSAUX表空间。

从Oracle 11g开始,SYSTEM表空间默认为本地化管理,表空间第一个数据文件中的位图段管理所有的空间使用。

(2)临时表空间(Temporary)
数据库中可同时在线和激活多个临时表空间,但Oracle 11g前同一用户的多个会话共享一个临时表空间,因为仅只有一个默认的临时表空间可被赋给用户。

为解决潜在的性能瓶颈,Oracle支持临时表空间组.临时表空间组由至少一个临时表空间组成。

2.本地管理表空间和字典管理表空间的含义与特点是什么?
解:
(1)字典管理表空间(DMT)
. .资料. ..
Oracle使用SYS.FET$表来记录空闲空间,使用SYS.UET$表来记录已经使用过的空间。

当从表空间分配新的Extent时,必须先获得space transaction(ST) enqueue latch后才能插入或删除SYS.FET$和SYS.UET$表。

在特定的时间,只有一个进程能获得ST enqueue,这通常会引起竞争和等待。

(2)本地管理表空间(LMT)
使用LMT,每个表空间使用表空间数据文件中的一个bitmap结构来管理空闲和已使用的空间的元数据信息。

每一bit对应一个数据库block或一组blcok。

本地管理表空间的好处:
(1)不需要使用recursive sql访问UET$和FET$
(2)消除了对于UET$和FET$的竞争(single ST enqueue)
(3)不用定期连接空闲空间,LMT会自动跟踪相邻的空闲空间。

(4)使用LMT时,分配extent只是改变segment header中的bitmap structure,不会产生回滚信息。

3.什么是自动撤消管理,它有什么好处?
解:
自动撤销管理允许DBA指定撤销信息在提交之后需要保留的时间,以防止在长时间的查询过程中出现“snapshot too old”的错误。

可以通过设置UNDO_RETENTION参数来实现这一过程。

这一参数的缺省值为900秒(即15分钟),但你可以设置这一参数以保证Oracle保留撤销日志。

无需定义和管理回滚段,就可以简单地指定一个撤销表空间而减轻Oracle的负担。

自动撤销管理需要一个当地管理撤销表空间,这一表空间用于存放撤销段。

所需要的建立一个撤销表空间,设置UNDO_MANAGEMENT=AUTO,然后与数据库进行连接。

当启动一个例子时,Oracle会自动选择第一个可用的撤销表空间。

4.如何创建非标准数据块表空间?
解:
oracle创建表空间相关的参数为bd_block_size 默认的大小即标准的大小,我们如果不指定具体的大小,所创建的表空间的数据块即可db_block_size 所指定的大小进创建的。

如下例:
create tablespace tbs_cb9
datafile '/opt/oracle/oradata/orcl/users09.dbf' size 10M;
当我们创建非标准块的表空间时,如果没有设置db_nk_cache_size 的大小,创建表空间时会报错误.ora-29339,相关描述的意思表空间的数据块大小也配置文件不匹配。

一般我们有两种方法进行解决。

查看系统默认的db_block_size大小;
show parameter db_block_size;
db_block_size integer 8192;
create tablespace tbs_cb8
12
. .. .
datafile '/opt/oracle/oradata/orcl/users08.dbf' size 10M
blocksize 16k;
由于我们创建的块大小与系统默认的块大小不一致会报ora-29339
方法1.
如果我们是以spfile方式启动数据库的,我们只需要对执行以下命令即可.由于本系统默认块的大小为8K,所以我以16为例创建一个非标准的表空间.
alter system set db_16K_cache_size = 20M scope = both ;
方法2.
如果我们是以pfile方式启动数据库的,
a.关闭数据库
shutdown immediate;
b.在初始化参数据增加(在pfile 里增加,如果show parameter spfile 没有手动创建一个pflle文件进行启动)
db_16K_cache_size = 20M;
c.startup pfile = '路径';
第五章ORACLE 11g 的表管理
一、单项选择题
1.Oracle表的唯一键约束与主键约束的一个区别是( A )
A.唯一键标识的列可以为空
B. 主键标识的列可以为空
C. 唯一键标识的列只可以为单列
D. 主键标识的列只可以为单列
2.下列哪个是无效的列名?( A )
A.1ST_ID
B.CUST#
C.ADDRESS1
D.EXCEPTION
3.如果希望在激活约束时不验证表中已有的数据是否满足约束的定义,那么可以使用下列哪个关键字?( D )
A.disactive
B.validate
C.active
D.novalidate
4.SQL语言中,删除一个表的命令是(B )
A. DELETE
B. DROP
C.CLEAR
D. REMORE
. .资料. ..
5. 有一个关系:学生(学号,,系别),规定学号的值域是8个数字组成的字符串,这一规则属于(C )
A.实体完整性约束
B.参照完整性约束
C.用户自定义完整性约束
D.关键字完整性约束
6.如果要修改表的结构,应该使用SQL语言的命令( C )
A.UPDATE TABLE
B. MODIFY TABLE
C.ALTER TABLE
D. CHANGE TABLE
7.如果各类元组在表的主键上取值为空值,那么它违反了关系的______A______完整性约束
A. 实体完整性
B. 引用完整性
C. 域完整性
D. 用户
8.下面关于主键约束的描述正确的是( A )
A.主键约束用于唯一的确定表中的每一行数据。

B.在一个表中,最多只能有两个主键约束。

C.主键约束只能由一个列组成。

D.主键约束不能由一个单列组成。

9.如果希望更新表authors中的first_name列为非空,那么可以使用哪个语句?( B )
A.alter table authors add first_name not null
B. alter table authors modify first_name not null
C. alter table authors alter first_name not null
D. alter table authors drop first_name not null
10. 表Sales存储其在某一天所销售的商品。

在一销售单上可以销售多个商品。

表Sales的结构如下:
CREATE TABLE Sales
(cSalesNo char(4) not null,
cProductID char(4) not null,
dDate datetime not null,
mPrice money not null,
nQty not null)
关于表Sales,下述哪个述为真?( A )
A.属性cSalesNo 和属性cProductId的组合作为主关键字。

B.属性cSalesNo 和属性cProductId是候选关键字。

C. 选择属性cSalesNo作为主关键字。

D. 如果属性cSalesNo作为主关键字,则cProductId 属性作为替代关键字。

11.雇员的情况和其所工作的部门存储在表Employee和表Department中。

有许多雇员名字相同但雇员代码不同。

除此之外,在一个部门里,可以有多个雇员。

表Employee创建如下:
CREATE TABLE Employee
(ECode char(6) not null,Name char(20) not null,DepartmentId char(4) not null)
表Department创建如下:
CREATE TABLE Department
(DepartmentId char(4) not null,DepartmentName char(10) not null)
14。

相关文档
最新文档