實驗8 ?視圖
一、實驗?zāi)康模?br> (1) 理解視圖的概念。
(2) 掌握創(chuàng)建、更改、刪除視圖的方法。
(3) 掌握使用視圖來訪問數(shù)據(jù)的方法。
二、實驗要求
1、學(xué)生提前準(zhǔn)備好實驗報告,預(yù)習(xí)并熟悉實驗步驟;
2、遵守實驗室紀(jì)律,在規(guī)定的時間內(nèi)完成要求的內(nèi)容;
3、1~2人為1小組,實驗過程中獨立操作、相互學(xué)習(xí)。
三、實驗內(nèi)容及步驟
1、使用SQL語句創(chuàng)建、管理視圖
(1) 創(chuàng)建視圖。
① 創(chuàng)建一個名為sc_view1的視圖,從數(shù)據(jù)庫gradem的sc表中查詢出成績大于90分的所有學(xué)生選修成績的信息。
create view sc_view1
as select *from sc
where degree>90;
② 創(chuàng)建一個名為sc_view2的視圖,從數(shù)據(jù)庫gradem的sc表中查詢出成績小于80分的所有學(xué)生的學(xué)號、課程號、成績等信息。
create view sc_view2
as select sno,cno,degree
from sc
where degree<80
③ 創(chuàng)建一個名為sc_view3的視圖,由數(shù)據(jù)庫gradem的student、course、sc表創(chuàng)建一個顯示“20070303”班學(xué)生選修課程(包括學(xué)生姓名、課程名稱、成績等信息)的視圖。
create view sc_view3
as
select sname,cname,degree,b.cno
from xscj.student a,xscj.sc b,xscj.course c
where a.sno=b.sno AND b.cno=c.cno
And sclass=‘計科1班’;
④ 創(chuàng)建一個從視圖sc_view1中查詢出課程號“c01”的所有學(xué)生的視圖。
create view sc_view4
as
select * from sc_view1
where cno =’c01’;
(2) 修改視圖的定義。
修改視圖sc_view1,使其從數(shù)據(jù)庫gradem的sc表中查詢出成績大于90分且第3學(xué)期的所有學(xué)生選修成績的信息。
alter view sc_view1
as select sno,degree
from sc a,kc b
Where a.cno=b.cno and a.degree>90 and b.cterm=3;
(3) 視圖的刪除。
① 將視圖sc_view1刪除。
drop view sc_view1;
(4) 管理視圖中的數(shù)據(jù)。
① 從視圖sc_view2中查詢出學(xué)號為“2007030125”、課程號為“a01”的學(xué)生選修成績的信息。
select degree
from sc_view2
where sno=081104 and cno=206;
② 將視圖sc_view2中學(xué)號為“2007030122”、課程號為“c02”的成績改為87。
update sc_view2
set degree=87
where sno=081104;
③ 從視圖sc_view2中將學(xué)號為“2007030123”、課程號為“a01”的學(xué)生信息刪除。
delete from sc_view2
where sno=081106 and cno=210;文章來源:http://www.zghlxwxcb.cn/news/detail-456305.html
四、思考題
(1) 視圖上能創(chuàng)建索引嗎?
不能,索引是要占用存儲空間的,也只能創(chuàng)建在占有存儲空間的對象上,而視圖是select語句的結(jié)果集,是放在內(nèi)存中的數(shù)據(jù),所以不能在視圖上創(chuàng)建索引。
(2)向視圖中插入的數(shù)據(jù)能進(jìn)入到基本表中去嗎?
可以的,修改視圖的數(shù)據(jù)直接影響基本表的數(shù)據(jù)。 因為視圖本身不保存數(shù)據(jù),只保存數(shù)據(jù)的來源這些內(nèi)容
(3)修改基本表的數(shù)據(jù)會自動反映到相應(yīng)的視圖中去嗎?
視圖是一個虛擬表,其內(nèi)容由查詢定義。 視圖中的數(shù)據(jù)是由一張或多張表中的數(shù)據(jù)組成的。 如果你改動了基本表,你的視圖來源于這個基本表,那視圖給你呈現(xiàn)的結(jié)果也會隨之發(fā)生變化。文章來源地址http://www.zghlxwxcb.cn/news/detail-456305.html
到了這里,關(guān)于數(shù)據(jù)庫 實驗8 視圖的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!