一、选择
1 )CBO与RULE的区别,RBO根据规则选择最佳执行路径来运
行查询,CBO根据表统计找到最低成本的访问数据的方法确定执行
计划。
使用CBO需要注意:
a
)
需要使用提示(Hint)
b
)
优化SQL的写法
c
)
选择最有效率的表名顺序
d
)
需要经常对表进行ANALYZE命令进行分析统计
d
)
需要稳定执行计划
2
)
在Oracle中,一个用户拥有的所有数据库对象统称为()。
a
)
数据库
b
)
模式
c
)
表空间
d
)
实例
3 )在Oracle中,可用于提取日期时间类型特定部分(如年、
月、日、时、分、秒)的函数有()。
a
)
DATEPART
b
)
EXTRACT
c
)
TO_CHAR
d
)
TRUNC
4 )在Oracle中,有一个教师表teacher的结构如下:IDNUMBER(5)
NAMEVARCHAR2(25)
EMAILVARCHAR2(50)
下面哪个语句显示没有Email地址的教师姓名()。
a
)
SELECTnameFROMteacherWHEREemail=NULL;
b
)
SELECTnameFROMteacherWHEREemail<>NULL;
c SELECTnameFROMteacherWHEREemailISNULL;
)
d
)
SELECTnameFROMteacherWHEREemailISNOTNULL;
5 )在Oracle数据库的逻辑结构中有以下组件:A表空间B数据块C区D段
这些组件从大到小依次是()。
a
)
A→B→C→D
b
)
A→D→C→B
c
)
A→C→B→D
d
)
D→A→C→B
6 )在Windows操作系统中,Oracle的()服务监听并接受来
自客户端应用程序的连接请求。
a
)
OracleHOME_NAMETNSListener
b
)
OracleServiceSID
c
)
OracleHOME_NAMEAgent
d
)
OracleHOME_NAMEHTTPServer
7 )在Oracle中创建用户时,若未提及DEFAULTTABLESPACE关
键字,则Oracle就将()表空间分配给用户作为默认表空间。
a
)
USER
b
)
SYSTEM
c
)
SYS
d
)
DEFAULT
8 )在Oracle数据库中,()用户模式存储数据字典表和视图
对象。
a
)
SYSTEM
b
)
SYS
c
)
SCOTT
d
)
SYSDBA
9在Oracle中,下面哪条语句当COMM字段为空时显示0,不
)为空时显示COMM的值()。
a
)
SELECTename,NVL(comm,0)FROMemp;
b
)
SELECTename,NULL(comm,0)FROMemp;
c
)
SELECTename,NULLIF(comm,0)FROMemp;
d
)
SELECTename,DECODE(comm,NULL,0)FROMemp;
1
0)
在Oracle中,下面用于限制分组函数的返回值的子句是()。
a
)
WHERE
b
)
HAVING
c
)
ORDERBY
d
)
无法限定分组函数的返回值
1 1)在Oracle中,有一个名为seq的序列对象,以下语句能返
回序列值但不会引起序列值增加的是()。
a
)
selectseq.ROWNUMfromdual;
b
)
selectseq.ROWIDfromdual;
c
)
selectseq.CURRVALfromdual;
d
)
selectseq.NEXTVALfromdual;
1
2)
在Oracle中,游标都具有下列属性,除了()。
a
)
%NOTFOUND
b
)
%FOUND
c
)
%ROWTYPE
d
)
%ISOPEN
e
)
%ROWCOUNT
1 3)在Oracle中,当控制一个显式游标时,下面哪种命令包含
INTO子句()。
a
)
OPEN
b
)
CLOSE
c
)
FETCH
d
)
CURSOR
1 4)在Oracle中,PL/SQL块中定义了一个带参数的游标:CURSORemp_cursor(dnumNUMBER)IS
SELECTsal,commFROMempWHEREdeptno=dnum;
那么正确打开此游标的语句是()。
a
)
OPENemp_cursor(20);
b
)
OPENemp_cursorFOR20;
c
)
OPENemp_cursorUSING20;
d
)
FORemp_recINemp_cursor(20)LOOP…ENDLOOP;
1 5)Oracle提供的(),能够在不同硬件平台上的Oracle数据
库之间传递数据。
a
归档日志运行模式
)
b
RECOVER命令
)
c
恢复管理器(RMAN)
)
d
Export和Import工具
)
16)有表一的查询结果如下,该表为学生成绩表selectid,gradefromstudent_grade IDGRADE
-------------------
150
240
370
480
530
690
表二为补考成绩表
selectid,gradefromstudent_makeup IDGRADE
-------------------
160
280
560
现在通过如下语句把补考成绩更新到成绩表中,并提交:
updatestudent_gradessets.grade=
(selectt.gradefromstudent_makeupt
wheres.id=t.id);
commit;
请问之后查询:
selectGRADEfromstudent_gradewhereid=3;结果为:
A:0B:70 C:nullD:以上都不对
17)根据以下的在不同会话与时间点的操作,判断结果是多少,
session1session2
------------------------------------------------------------------------------T1selectcount(*)fromt;
--显示结果(1000)条
T2deletefromtwhererownum<=100;
T3begin
deletefromtwhererownum<=100;
commit;
end;
/
T4truncatetablet;
T5selectcount(*)fromt;
--这里显示的结果是多少
A:1000B:900 C:800D:0
18)有数据”test”分别存放到char(10)和varchar2(10)类型的字段中,其实际存储长度为
a)1010b)44 c)104d)410
19)Oracle性能调整的层次:
1、Oracle实例调整
2、OracleSQL调整
3、环境调整
4、Oracle对象调整
按照顺序分别为:
a)1234b)4321c)2413d)2143
二、简答
1列举几种表连接方式
2SQL调整最关注的是什么
3不借助第三方工具,怎样查看sql的执行计划
4索引对dml的影响,对查询的影响,为什么提高查询性能?5评价Oracle数据库性能的主要指标
6如何稳定(固定)执行计划
7绑定变量是什么?绑定变量有什么优缺点?
8使用索引查询一定能提高查询的性能吗?为什么?。