多选题
如果在SQL*Plus中发出了这样的SQL语句"SELECT*FROM hr.employees; ",请问服务器进程将使用以下的哪一个内存结构来验证权限?
A.库高速缓存(library cache)
B.数据字典高速缓存(data dictionary cache)
C.数据库高速缓冲区(database buffer cache)
D.重做日志缓冲区(redo log buffer)
【正确答案】
B
【答案解析】[解析] 这一题是测试对数据字典高速缓存的理解程度。根据有关数据字典高速缓存的介绍——“当Oracle在执行SQL语句时,服务器进程将把数据文件、表、索引、列、用户和其他的数据对象的定义及权限的信息放入数据字典高速缓存”,可以断定选项B是正确的。
因为库高速缓存是用来存放SQL的语句、编译后的代码和执行计划的,所以选项A肯定是错误的。
因为数据库高速缓冲区是用来存放数据的(来自数据文件中),所以选项C肯定是错误的。
因为重做日志缓冲区是用来存放变化的数据的,所以选项D肯定也是错误的。