职业考试 | 在线试题 | 作文辅导 | 范文大全 | 中小学教育 | 试题教案课件

当前位置:得高分网试题在线计算机等级考试计算机三级考试计算机等级考试三级数据库历年真题解析[5]

计算机三级考试

当前:首页 >> 计算机等级考试三级数据库历年真题解析[5]

计算机等级考试三级数据库历年真题解析[5]

日期:04-04 20:08:43 | 计算机三级考试 | 浏览次数: 120 次 | 收藏

标签:计算机三级考试试题,计算机三级考试内容,计算机三级考试真题,http://www.gaofen123.com 计算机等级考试三级数据库历年真题解析[5],

wheresd=’计算机系’;
createviews_g(s#,gavg)asselects#,avg(grade)
fromscgroupbys#;
若用下面的sql语句对上述视图进行修改,它们能被成功执行吗?为什么?
(1)updatecs_ssetsname=’wangping’wheres#=’200301001’;
(这里假定在表s中存在学生号s#=’200301001’的行。)
(2)insertintocs_svalues(’200302189’,’yangxin’,21);
(这里假定在表s中不存在学生号s#=’200302189’的行。)
(3)updates_gsetgavg=85wheres#=’200301001’;
(这里假定在表sc中存在学生号s#=’200301001’的行。)
要求:
首先回答这三个sql语句中哪个(些)能被成功执行,哪个(些)不能被成功执行(12分),再进一步说明能被成功执行或不能被成功执行的理由(18分)。

答案:
(1).第(1)和(2)两个sql语句能被成功执行;第(3)个sql语句不能被成功执行。
(2).因为对视图的修改最终要转换为对基本表的修改。
ⅰ对于第(1)个sql语句能被成功执行的理由是:执行这个sql语句将转换成执行如下的sql语句:
updatessetsname=’wangping’
wheresd=’计算机系’ands#=’200301001’;
ⅱ对于第(2)个sql语句能被成功执行的理由是:执行这个sql语句将转换成执行如下的sql语句:
insertintosvalues(’200302189’,’yangxin’,null,21,’计算机系’)
或insertintos(s#,sname,age,sd)values(’200302189’,’yangxin’,21,’计算机系’)
转换后的这两个sql语句,在本题意的假定下是能够被成功执行的。所以第(1)和(2)个sql语句能被成功执行。
ⅲ对于第(3)个sql语句不能被成功执行的理由是:由于视图s_g中的一个行是由表sc中若干行经过分组求平均值得到的,因此对视图s_g的更新就无法转换成对基本表sc的更新。所以第(3)个sql语句不能被成功执行。

相关分类

计算机三级考试 更新

计算机三级考试 热门排行