createviewCS_SasselectS#,SNAME,AGEfromS
whereSD=’計算機系’;
createviewS_G(S#,GAVG)asselectS#,avg(GRADE)
fromSCgroupbyS#;
(1)updateCS_SsetSNAME=’WANGPING’whereS#=’200301001’;
(這里假定在表S中存在學(xué)生號S#=’200301001’的行。)
(2)insertintoCS_Svalues(’200302189’,’YANGXIN’,21);
(這里假定在表S中不存在學(xué)生號S#=’200302189’的行。)
(3)updateS_GsetGAVG=85whereS#=’200301001’;
(這里假定在表SC中存在學(xué)生號S#=’200301001’的行。)
要求:
答案:
(1).第(1)和(2)兩個SQL語句能被成功執(zhí)行;第(3)個SQL語句不能被成功執(zhí)行。
(2).因為對視圖的修改最終要轉(zhuǎn)換為對基本表的修改。
Ⅰ對于第(1)個SQL語句能被成功執(zhí)行的理由是:執(zhí)行這個SQL語句將轉(zhuǎn)換成執(zhí)行如下的SQL語句:
updateSsetSNAME=’WANGPING’
whereSD=’計算機系’andS#=’200301001’;
Ⅱ?qū)τ诘?2)個SQL語句能被成功執(zhí)行的理由是:執(zhí)行這個SQL語句將轉(zhuǎn)換成執(zhí)行如下的SQL語句:
insertintoSvalues(’200302189’,’YANGXIN’,NULL,21,’計算機系’)
或insertintoS(S#,SNAME,AGE,SD)values(’200302189’,’YANGXIN’,21,’計算機系’)
轉(zhuǎn)換后的這兩個SQL語句,在本題意的假定下是能夠被成功執(zhí)行的。所以第(1)和(2)個SQL語句能被成功執(zhí)行。
Ⅲ對于第(3)個SQL語句不能被成功執(zhí)行的理由是:由于視圖S_G中的一個行是由表SC中若干行經(jīng)過分組求平均值得到的,因此對視圖S_G的更新就無法轉(zhuǎn)換成對基本表SC的更新。所以第(3)個SQL語句不能被成功執(zhí)行。
希望與更多計算機等級考試的網(wǎng)友交流,請進入計算機等級考試論壇
更多信息請訪問:考試吧計算機等級考試欄目
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |