问题 单项选择题

以下是学生(STUDENT)表所包含的全部列的定义:
ID NUMBER(9) PK
LAST_NAME VARCHAR2(25)
FIRST_NAME VARCHAR2(25)
ENROLL_DATE DATE
请看如下的SQL,脚本(语句),应该怎样修改才可以使它运行
DEFINEenroll_date_2=’01-JUN-1999’
SELECT*
FROM student
WHEREenroll_date=(’&enroll_date_2’)
/

A.去掉&符号
B.去掉单引号
C.在DEFINE命令中将变量说明为DATE数据类型
D.将DEFINE命令以’ACCEPT enroll_date_2 DATE’取代

答案

参考答案:D

解析: 这一题是测试对DEFINE和ACCEPT命令的理解。根据STUDENT表中ENROLL_DATE的定义,我们知道ENROLL_DATE这一列的数据类型是DATE,所以WHERE子句中的替代变量也必须是DATE型。
根据有关使用DEFINE定义替代变量的介绍,可知DEFINE命令只能用来创建字符型的替代变量,所以可以确认选项C明显是错误的。根据有关ACCEPT命令的格式和选项的介绍,可知可使用该命令显式的定义日期型或数字型变量,所以可以断定选项D是正确的。
因为替代变量之前必须冠以“&”,所以选项A可以排除。因为字符型和日期型的数据必须用单引号括起来,所以选项B也可以排除。

单项选择题
多项选择题