问题
单项选择题
(34) -(36)基于“学生-选课-课程”数据库中的三个关系: S(S#, SNAME, SEX, AGE), SC(S#, C#, GRADE), C(C#, CNAME, TEACHER) 它们的主码分别是S#, (S#, C#)和C#
设S AVG(SNO, AVG GRADE)是一个基于SC表定义学生号和他的平均成绩的视图。
下面对该视图的操作语句中,哪个(些)不能正确执行()
Ⅰ. UPDATE S_AVG SETAVG GRADE=90 WHERE SNO=’2004010601’;
Ⅱ. SELECT SNO, AVG_GRADEFROM S_AVG WHERE SNO=’2004010601’;
Ⅲ. INSERT INTO S_AVG VALUES(’2004010618’, 88);
A.仅Ⅰ和Ⅲ
B.仅Ⅱ
C.仅Ⅱ和Ⅲ
D.都不能
答案
参考答案:A
解析:
根据题意可知,视图生成表中没有的新字段AVG_GRADE,该字段不属于任何一个源表,所以该字段只能显示,而不能进行更新。所以Ⅰ、Ⅲ的操作是无效操作。而Ⅱ操作表示查询视图中字段,是一个可以执行的语句。