多选题 请看SQL语句"SELECT name, status FROM v$controlfile; ",这一语句将显示以下哪个结果?
A.显示MAXDATAFILE的值
B.确定最后一个检查点所发生的时间
C.显示所有数据文件的名字和状态
D.显示所有控制文件的个数、名字、状态和位置

【正确答案】 D
【答案解析】[解析] 这一题是测试对控制文件和数据字典v$controlfile的熟悉程度。根据有关怎样查看控制文件的配置的介绍,可以断定选项D是正确的。实际上,可以使用如下的命令来验证这一点。其中“col name for a55”为SQL*Plus的格式化语句,其含义是将name列的显示宽度设置为55个字符,其目的是使显示结果更为清晰。
SQL>col name for a55
SQL>select name, status from v$controlfile;
NAME STATUS
----------------------------------------------------- ----------
F:/ORACLE/PRODUCT/10.2.0/ORADATA/DOG/CONTROL01.CTL
F:/ORACLE/PRODUCT/10.2.0/ORADATA/DOG/CONTROL02.CTL
F:/ORACLE/PRODUCT/10.2.0/ORADATA/DOG/CONTROL03.CTL
以上命令的显示结果表明,这个数据库共有3个控制文件,文件名分别是CONTROL01.CTL、CONTROL02.CTL和CONTROL03.CTL,而文件的位置就是目录(文件夹),由于这3个控制文件都处于正常状态,所以STATUS列没有任何显示。