ORACLE 11g教程 大数据库应用简明教程.docx
《ORACLE 11g教程 大数据库应用简明教程.docx》由会员分享,可在线阅读,更多相关《ORACLE 11g教程 大数据库应用简明教程.docx(34页珍藏版)》请在冰豆网上搜索。
ORACLE11g教程大数据库应用简明教程
第二章
填空题
1.oracle数据库从存储结构上可以分为__物理存储结构____和__逻辑存储结构___.
2.在oracle数据库中,_数据文件__是指存储数据库的文件,数据库中的所有数据最终都保存在_数据文件_中。
3.Oracle数据库从逻辑存储结构上可以分为表空间、_段___、区、_块___。
一个数据库实例由多个表空间组成,一个表空间由多个__段__组成,一个__段__有多个区组成,一个区由多个__块__组成。
4.将日志缓冲区的日志信息写入日志文件的后台进程是__LGWR__,如果数据库实例运行在归档模式下,则日志文件中的容将会被__ARCn__进程写入归档日志。
5.oracle数据库的物理存储结构主要有数据库文件、__控制文件__和_日志文件___这3种类型的文件组成。
6.如果一个服务器进程非正常终止,由oracle系统会使用__PMON__进程来释放他所占用的资源。
7.oracle数据库中,段主要可以分为数据段、_索引段___、_临时段___和_回退段___。
二、选择题
1.下面对数据库文件的叙述中,正确的是C
A、一个表空间只能对应一个人数据库文件
B、一个数据文件可以对应多个表空间
C、一个表空间可以对应多个数据库文件
D、数据库文件存储了数据库中的所的日志信息
2.下面对数据库逻辑存储结构叙述中,正确的是__AB__
A、一个数据库实例由多个表空间组成
B、一个人段由多个区组成
C、一个人区由多个段组成
D、一个人块由多个区组成
3.下面哪种后台进程用于将数据缓冲区中的数据写入数据文件?
__B__
A、LGWR
B、DBWn
C、CKPT
D、ARCn
4.系统全局区包括下面那些区域?
__ACD__
A、java池
B、软件代码区
C、数据缓冲区
D、日志缓冲区
5.解析后的sql语句会缓存到下面的SGA哪个区域中?
_C___
A、java池
B、大型池
C、共享池
D、数据缓冲区
三、简答题
1.简述oracle物理存储结构中的数据文件、控制文件与重做日志文件的作用。
答:
数据文件(DataFile)是指存储数据库数据的文件
控制文件(ControlFile)是一个很小的二进制文件,用于描述和维护数据库的物理结构
重做日志文件(RedoLogFile)是记录数据库中所有修改信息的文件,简称日志文件
2.简述oracle逻辑存储结构中的表空间、段、区、块之间的关系。
答:
表空间是Oracle中最大的逻辑存储结构,它与物理上的一个或多个数据文件相对应,每个Oracle数据库都至少拥有一个表空间,表空间的大小等于构成该表空间的所有数据文件大小的总和。
一个或多个区组成一个段,所以段的大小由区的个数决定。
不过,一个数据段可以包含的区的个数并不是无限制的,它由如下两个参数决定
3.简单介绍LGWR进程与ARCn进程的作用。
答:
LGWR(LogWriter,日志写入)进程,是负责管理日志缓冲区的一个后台进程,用于将日志缓冲区中的日志数据写入磁盘的日志文件中
ARCn(ArchiveProcess,归档)进程,用于将写满的日志文件复制到归档日志文件中,防止日志文件组中的日志信息由于日志文件组的循环使用而被覆盖。
4.如果想要了解数据库中所有的表的信息,应使用那种数据字典?
答:
dba_tables数据字典
5.DBWn进程所采用的LRU算法应该怎样理解
LRU算法是数据缓冲区的一种管理机制,只保留最近的数据,不保留旧数据,所以DBWn进程可以使用LRU算法将最近使用的数据块保留在存中。
3.5习题
一、填空题
1.查看表结构时,所使用的命令是__DESCRIBE___,该命令可以简写为___DESC_____。
2.使用SQL*Plus语句块编辑SQL语句时,可以使用的命令有APPEND(可以简写为A)命令、__CHANGE___(可以简写为C)命令、__INPUT___(可以简写为I)命令、___LIST_____(可以简写为L)命令,以及RUN(可以简写为R)命令。
3.在SQL*Plus工具中,可以使用SAVE命令将缓冲区容保存到文件;可以使用___START____命令读取并运行文件容;可以使用___EDIT____命令编辑缓冲区容或文件容;还可以使用SPOOL命令复制输出结果到文件。
4.在SQL语句中,如果在某个变量前面使用了&符号,那么就表示该变量是一个临时变量,定义变量,可以使用___DEFINE____或ACCEPT命令;删除变量,可以使用UNDEFINE命令。
5.在SQL*Plus中格式化查询结果时,COLUMN命令可以格式化对列的显示效果,PAGESIZE命令可以__设置一页显示多行数据____,LINESIZE命令可以__设置一行显示多少个字符___。
6.创建简单报表时,使用___TTITLE____命令和____BTITLE____命令,分别为报表设置页眉和页脚信息。
二、选择题
1.在SQL*Plus中数据库时,可以使用CONNECT命令。
下面的4个选项中,哪几个命令是正确的?
其中,用户名为scott,密码为tiger,数据库名为orcl。
____D________
A.CONNECTscott/tiger;
B.CONNECTtiger/scott;
C.CONNscott/tigerassysdba;
D.CONNscott/tigerorclassysdba;
2.执行语句SAVEscott_emp_query.sqlAPPEND,执行结果表示_____C_____。
A.如果scott_emp_query.sql文件不存在,则出现错误
B.如果scott_emp_query.sql文件已经存在,则出现错误
C.将缓冲区中的容追加到scott_emp_query.sql文件中,如果该文件不存在,会创建该文件
D.将缓冲区中的容替换掉scott_emp_query.sql文件的容,如果该文件不存在,会创建该文件
3.使用SQL*Plus中的____B_______,可以将文件中的容检索到缓冲区,并且不执行。
A.SAVE命令
B.GET命令
C.START命令
D.SPOOL命令
4.下面是有关变量的描述,请问哪些描述是正确的?
_____C__________
A.临时变量是指仅在某个SQL语句中有效的变量
B.临时变量实在某个会话期间有效的变量
C.已定义变量是指明确定义,其生命期至显式地删除、重新定义或退出SQL*Plus为止
D.已定义的变量是不能被删除的
5.如果希望控制列的显式格式,那么可以使用下面的____D____________命令
A.SHOW
B.DEFINE
C.SPOOL
D.COLUMN
三、简答题
1.使用DESCRIBE命令,查看scott用户的dept表的结构信息。
答:
DESCRIBEscott.dept;
2.使用SAVE命令将缓冲区容写入到e:
\test.sql文件中;然后使用START命令将文件中的容读入到缓冲区,并且进行执行。
答:
SAVEe:
\test.sql;STARTe:
\test.sql;
3.执行下列语句,观察输出结果;
DEFINEtemp=5000
SELECTempno,ename,mgr
FROMscott.emp
WHEREsa1>=&temp;
答:
输出结果为:
员工编号员工上级编号
7839KING
4.对scott用户的emp表的输出信息进行格式设置,其中,empno列设置标题为“员工编号”,NUMBER格式为9999;ename列设置标题为“员工名称”,格式设置为25个;hiredate列设置标题为“受雇日期”,并且标题居中显示。
答:
COLUMNempnoHEADING‘员工编号’FORMAT9999
COLUMNenameHEADING‘员工’FORMATA25
COLUMNhiredateHEADING‘受顾日期’JUSTIFYGENTER
SELECTempno,ename,hiredate
FROMscott.emp;
5.设置一页显示30行数据,并且设置一行显示130个字符,然后输出scott用户的emp表的全部信息。
答:
SETPAGESIZE30
SETLINESIZE130
SELECT*FROMscott.emp;
Oracle第四章课后习题以及答案
一、填空题
1.在创建永久性性表空间是,需要使用datafile关键字指定其数据文件,而如果是创建临时表空间时,则应该使用___关键字为其指定临时文件。
(TEMPFILE)
2.表空间的状态属性主要有ONLINE__,___和__。
(OFFLINE,READONLY,.READWRITE)
3.数据文件的状态属性主要有ONLINE___和__。
(OFFLINE,OFFLINEDROP)
4.创建临时表空间需要使用TEMPORARY关键字,创建大文件表空间需要使用___关键字,创建撤销表空间需要使用___关键字。
(BIGFILE,UNDO)
5.oracle中用户默认的永久表空间为___,默认的临时表空间为temp。
(users)
6.oracle中管理撤销表空间的方式有回退段撤销管理和____。
(自动撤销管理)
二、
1、下面那些不属于表空间的状态属性(CD)
A.ONLINE
B.OFFLINE
C.OFFLINEDROP
D.READ
2.将表空间的状态切换为OFFLINE时,可指定下面那种切换方式(ABD)
A.NORMAL
B.IMMEDIATE
C.TEMP
D.FORRECOVER
3.在表空间space中没有存储任何数据,现在删除该表,并同属删除其对应的数据文件,可使用下面哪条语句(C)
A.DROPTABLESPACEspace;
B.DROPTABLESPACEspaceINCLUDINGDATAFILE;
C..DROPTABLESPACEspaceINCLUDINGCONTENTSANDDATAFILE;
D.DROPTABLESPACEspaceANDDATAFILE;
4.使用下列语句创建一个临时空间表temp
CREATE___TABLESPACEspace
_____’‘F:
\oraclefile\temp.dbf’
SIZE10MB
AUTOEXTENDON
NEXT2M
MAXSIZE20M;
从下面的选项中中选择正确的关键字补充上面的语句(C)
A.(不填)、DATAFILE
B.TEMP、TEMPFILE
C.TEMPORARY、DATAFILE
D..TEMP、DATAFILE
5.将临时表空间设置temp设置为临时表空间的正确语句为(B)
A.ALTERDATASPACEDEFAULTTABLESAPCEtemp;
B.ALTERDATASPACEDEFAULTTEMPORARYTABLESAPCEtemp;
C.ALTERDEFAULTTEMPORARYTABLESAPCETOtemp;
D.ALTERDEFAULTTABLESAPCETOtemp;
6.如果当前数据库实例中有一个临时表空间里组group1,该组中有一个临时表空间temp1,先使用下列语句修改temp1表空间所在组为group2:
ALTERTABLESPACEtemp1TABLESPACEGROUPgroup2;
对执行上述语句说确的是(BD)
A.由于数据中不存在group2组,因此执行将失败
B.上属语句执行成功,temp2表空间将被移动到group2组中
C.执行上述语句后,数据库实例中将存在两个临时表空间组:
group1和group2
D..执行上述语句后,数据库实例中将只存在一个临时表空间组:
group2
三、简答题
1.表空间的状态有哪几种,它们分别表示什么意思?
答:
表空间的状态分别有如下几种:
1)在线(ONLINE):
当表空间的状态为ONLINE时,才允许访问该表空间中的数据。
2)离线(OFFLINE):
当表空间状态为OFFLINE时,不允许访问该表空间中的数据。
3)只读(READONLY):
当表空间的状态为READONLY时,虽然可以访问表空间中的数据,但访问仅仅限于阅读,而不能进行任何更新或删除操作。
4)读写(READWRITE):
当表空间的状态为READWRITE时,可以对表空间进行正常访问,包括对表空间中的数据进行查询、更新和删除等操作。
2.如果初始化参数为db_block_size的值为16KB,那么还能设置db_16k_cache_size的参数的值么?
请结合本章的学习容,创建一个非标准数据块表空间,并简述其步骤。
答:
不能。
(1)使用SHOWPARAMWTER语句查看数据缓冲区参数db_16k_cache_size的值:
SHOWPARAMWTERdb_16k_cache_size
(2)使用ALTERSYSTEM语句修改参数db_16k_cache_size的值:
ALTERSYSTEMSETdb_16k_cache_size=20M;
(3)创建表空间non,指定其数据块大小为16KB:
CREATETABLESPACEnon
DATAFILE‘F:
\ORACLE\non.dbf’
SIZE5M
BLOCKSIZE16K;
3在实际应用中,需要临时创建一个表来使用,那么是否可以将该表创建在临时表空间中?
答:
不需要,如果是创建临时表的话,一般如果容部是很大不会有很明显的影响,而且使用完之后系统会自动删除临时表。
4在oracle中,对表空间的使用与管理非常重要。
请创建一个表空间,然后对表空间的数据文件进行增加,删除和移动等管理,巩固本章所学的知识。
答:
创建表空间:
(创建永久性表空间myspace)
CREATETABLESPACEmyspace
DATAFILE‘E:
\myspace.dbf’
SIZE20M
AUTOEXTENDONNEXT50M
MAXSIZE100M;
在表空间中增加数文件:
(myspace表空间中在增加E:
\目录下增加一个数据文件,名为myspace01.dbf)
ALTERTABLESPACEmyspace
ADDDATAFILE
‘E:
\myspace01.dbf’
SIZE10M
AUTOEXTENDONNEXT5M
MAXSIZE70;
删除表空间中数据文件:
(删除myspace表空间数据文件E:
\myspace01.dbf)
ALTERTABLESPACEmyspace
DROPDATAFILE‘E:
\myspace01.dbf’;
移动表空间中数据文件:
(将myspace01.dbf从目录‘E:
\’移到目录‘F:
\’)
ALTERTABLESPACEmyspace
RENAMEDATAFILE‘E:
\myspace01.dbf’
TO‘F:
\myspace01.dbf’
一、填空题:
1.按照约束的用途,主要可以将表的完整性约束分为NOTNULL约束、_____UNIQUE约束_______、__PRIMARYKEY约束__________、___CHECK约束_________和__FOREIGNKEY约束__________。
2.使用____TRUNCATE________关键字,可以快速删除表中的所有记录,并且不在撤销表空间中记录撤销数据。
3.___NOTNULL_________约束用于定义列中不能出现NULL值,___UNIQUE_________约束用于定义列中不能出现重复值,而PRIMARYKEY约束则可以定义列中既不予许出现NULL值,也不允许出现重复值。
4.如果要清除索引中的存储碎片,可以对索引进行合并或___重建_________。
视图中的列并不都支持DML操作,通过数据字典__user_updatable_columns__________可以了解视图中那些列是可更新的。
5.使用__currval__________可以获取序列的当前值,使用____nextval________可以获取下一个值。
二、选择题:
1.存储数据123.45,可以使用下面哪种数据类型?
____AD________
A.NUMBER
B.NUMBER(5)
C.NUMBER(5,3)
D.NUMBER(5,2)
2.如果某列定义了UNIQUE约束,则____AD________
A.该列不允许出现重复值。
B.该列不允许出现NULL值。
C.该列允许出现一个NULL值。
D.该列允许出现多个NULL值。
3.为定义一个CHECK约束,希望该约束能对表中已存储的数据,以及以后向表中添加或修改的数据都进行检查,则应该将该约束设置为如下哪种状态?
____A________
A.ENABLEVALIDATE
B.ENABLENOVALIDATE
C.DISABLEVALIDATE
D.DISABLENOVALIDATE
4.使用如下语句创建一个视图:
CREATEVIEWtest_viewAS
SELECTstu.studname,stu.stuage+1newage,cla.claname
FROMstudentstuLEFTJOINclassclaONstu.claid=cla.claid;
请问test_view视图中那些列是可更新的?
____A________
A.stuname
B.stuname、newage
C.stuname、claname
D.stuname、newage、claname
5.如果创建一个序列,用于为表的主键列生成主键值,则创建该序列时不应该指定以下哪种参数?
___D_________
A.MAXVALUE1000
B.MINVALUE10
C.CACHE10
D.CYCLE
6.如果在创建序列时指定其CACHE参数值为10,当序列的当前值为5时,数据库突然关闭,再次运行数据库后,序列将从以下哪个值开始?
__C________
A.5B.6C.11D.16
三、简答题:
1.比较VARCHAR2与CHAR两种数据类型的区别,并举例说明分别在什么情况下使用这两种数据类型。
答:
CHAR的长度是固定的,VARCHAR2的长度是可以变化的,VARCHAR2比CHAR节省空间,在效率上比CHAR会稍微差一些
2.创建一个表后,为表中的某列添加CHECK约束,并分别设置该约束的状态为4中不同的状态,比较这4中状态下的约束检查效果。
答:
3.如果经常需要使用如下语句查询employee表中的员工信息:
SELECT*FROMWHERESUBSTRB(ename,0,2)=’’;
那么应该为ename创建什么索引,如何创建?
答:
创建一个带有SUBSTRB函数的基于函数的索引
createindexemp_ename_SUBSTRBoneemp(SUBSTRB(ename,0,2));
这样在执行上面的查询语句时,这个基于函数的索引将排上用场,执行计划将是(INDEXRANGESCAN)。
4.如果对视图的基表进行结构上的改动,将会影响视图的可用性。
请基于一个表创建一个视图,在视图的子查询语句中使用*查询基表的所有列,然后对该表进行结构修改,例如增加列、删除列、修改列名等,测试不同情况下视图的可用性,并思考其中的原因。
答:
5.思考在实际应用中使用同义词的好处:
答:
一:
应用程序开发可以不管数据库的具体对象名
二:
避免应用程序直接访问数据库对象,提高数据库安全性
三:
简化数据库对象的访问。
一、填空题
1.备份控制文件主要有两种方式:
和备份成脚本文件。
2.通过数据字典v$datafile可以产看数据文件信息,通过数据字典可以查看控制文件信息,通过数据字典可以产看日志文件信息。
3.Oracle数据库的运行模式有归档模式和模式两种,Oracle数据库默认为非归档模式,数据库管理员可以执行语句,将数据库的运行模式的运行模式设置为归档模式。
4.如果在创建控制文件时使用了RESRTLOGS选项,则应该执行语句打开数据库。
5.使用ALTERSYSTEM语句修改参数值时,可以使用SCPOE选项,该选项有MEMORY、和3个可选值。
二、选择题
1.下面对日志文件及其成员叙述正确的是。
A.日志文件组中可以没有日志成员
B.日志文件组中的日志成员大小一致
C.在创建日志文件组时,其日志成员可以是已经存在的日志文件
D.在创建日志文件组时,如果日志成员已经存在,则使用REUSE关键字就一定可以成功替换该文件
2.当日志文件组处于哪种情况时,无法清空该日志文件组?
A.ACTIVEB.INACTIVE
C.CURRENTD.UNUSED
3.下面哪条语句用于切换日志文件组?
A.ALTERDATABASESWITCHLOGFILE;
B.ALTERSYSTEMSWITCHLOGFILE;
C.ALTERSTSTEMARCHIVELOG;
D.ALTERDATABASEARCHIVELOG;
4.删除日志文件组5种的日志文件E:
\orcl\datafile\redo05.log,其中正确的语句是。
A.ALTERDATABASEDROPLOGFIL’E:
\orcl\datafile\redo05.log’;
B.ALTERDATABASEDROPLOGFILEGROUP5’E:
\orcl\datafile\redo05.log’;
C.ALTERDATABASEDROPKOGFILEMEMBER’E:
\orcl\datafile\redo05.log’;
D.ALTERGROUP5DROPLOGFILE’E:
\orcl\datafile\redo05.log’;
5.修改系统中的参数值时,如果只修改服务器参数文件中的设置,则SCOPE选项的值应该为。
A.SPFILEB.MEMORY
C.BOTHD.以上都不对
三、简答题
1.控制文件在数据库中有什么作用?
在创建控制文件时应该注意哪些问题?
2.日志文件组中的日志成员大小应该一致吗?
为什么?
3.日志文件组有哪几种状态,它们分别表示什么含义?
4.简述清空日志文件组以及删除日志文件组或日志成员时应该注意哪些问题。
5.件数归档模式与非归档模式的区别。
答案:
一、填空题
1.备份为二进制文件
2.v$controlfile、v$logfile
3.ALTERDATABASEARCHIVELOG
4.ALTERDATABASEOPENRSEETLOGS
5.SPFILE、BOTH
二、选择题
1.B2.C3.B4.C5.A
1.如果需要在SELECT