多选题
TEACHER(讲师)表中列的定义如下: Name Null? Type -------------------- ---------------- ----------------- TEACHER_ID NOT NULL NUMBER(9) NAME VARCHAR2(25) SALARY NUMBER(7, 2) SUBJECT_ID NOT NULL NUMBER(3) SUBJECT_DESCRIPTION VARCHAR2(2) 如要将所有教科学的讲师的工资提高8‰科学讲师的subject_id为011,应使用如下的哪个语句? A.UPDATE teacher SET salary=salary * 1.08 WHERE subject_description LIKE 'SCIENCE'; B.UPDATE teacher SET salary=salary * .08 WHERE subject_description LIKE 'SCIENCE' AND subject_id=011; C.UPDATE teacher SET salary=salary * 1.08 WHERE subject_id=011; D.UPDATE teacher SET salary=salary+(salary * .08) WHERE subject_description LIKE 'SCIENCE' OR subject_id=011;
【正确答案】
C
【答案解析】[解析] 这一题主要是测试对UPDATE语句的理解和熟悉程度。首先根据题目的要求,选项B肯定是错误的,因为“SET salary=salary * .08”是将工资更改为原工资的8%。 参阅TEACHER表中subject_description列的定义,可知这一列的最大长度为两个字符,所以“WHERE subject_description LIKE 'SCIENCE'”子句肯定是错误的,而且在题目中根本就没有说科学(SCIENCE)存在于subject_description列中,所以选项A、B和D肯定都是错误的。因此答案只能是C了。