視圖是從一個或多個基本表中到處的虛表,數據庫只存放視圖的定義,我們通過視圖所看到的數據其實仍然存放在基本表中。
視圖的優點有:
- 視圖能夠簡化用戶的操作
- 視圖使用戶從不同角度看待統一數據
- 視圖爲數據庫重構提供了一定的邏輯獨立性
- 視圖能夠對機密數據提供安全保護
- 適當的利用視圖可以更清晰地表達語句
定義視圖
定義視圖的語句格式爲:
create view <視圖名>[(<列名>[<列名>]…)]
as <子查詢>
[with check option];
例:建立信息系學生的視圖
create view 'IS_Student'
as
select Sno,Sname,Sage
from Student
where Sdept = 'IS';
例:建立信息系選修了1號課程且成績在90分以上的學生的視圖
create view 'IS_Grade'
as
select Student.Sno,Sname,Sage
from Student,SC
where SC.Sno = Student.Sno and Cno = '1' and Grade > 90;
刪除視圖
drop view <視圖名>[cascade];
例:刪除視圖IS_Student
drop view IS_Student cascade;
查詢、更新視圖
查詢、更新視圖的語法與基本表的一致,不再贅述。需要注意的是,對視圖的內容的更新,實際上是對基本表的更新。關於基本表查詢的內容可參閱其他文章:http://blog.csdn.net/larry233/article/details/51549172