日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL Server之视图基础知识

發布時間:2024/4/15 数据库 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL Server之视图基础知识 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

視圖的概念
視圖就是一張虛擬的表。視圖在外觀和行為上都類似于表,但它不需要實際的物理存儲。
當創建一個視圖時,實際上是在數據庫里執行了一個select語句。
警告:如果用于創建視圖的表被刪除了,那么這個視圖就不可訪問了。如果對這個視圖做查詢,就會收到錯誤信息。

創建視圖
create view view_name
as
sql_sentence
執行語句 select? * from view_name

With Check Option
這是Create View語句里的一個選項,其目的是確保全部的Update和Insert語句滿足視圖定義里的條件。
例如:

create view view_score
as
select sid,fid,score from score
where fid is not null
with check option

在這個范例里,with check option確保了fid里的數不能為null。
當插入數據:insert into view_score values(null,59),系統會提示錯誤。
警告:在基于視圖創建另一個視圖時,with check option有兩個選項:cascaded和local,其中cascaded是默認選項。在對基表進行更新時,cascade
選項會檢查所有底層視圖,所有完整性約束,以及新視圖的定義條
件。local選項只檢查兩個視圖的完整性約束和新視圖的定義條件,不檢查底層的表。因
此,使用cascade選項
創建視圖是更安全的做法,基表的引用完整性也得到了保護。

刪除視圖
drop view view_name
有兩個選項:restrict和cascade;如果使用了restrict選項進行刪除操作,而其他視圖在約束里有所引用,刪除操作就會出錯。
如果使用了cascade選項,而且其他視圖或約束被引用了,drop view也會成功,而且底層的視圖或數據也會被刪除。

警告:在使用cascade選項時小心,避免重要的視圖被意外的刪除。

視圖的注意事項:
在一定條件下,視圖的底層數據可以進行更新:
視圖不包括結合;
視圖不包括Group By子句;
視圖不包括Union語句;
視圖不包含對偽字段RowNum的任何引用;
視圖不包含任何組函數;
不能使用Distinct子句;
Where子句包含的嵌套的表表達式不能與From子句引用同一個表。

轉載于:https://www.cnblogs.com/jiajiayuan/archive/2011/07/13/2104934.html

總結

以上是生活随笔為你收集整理的SQL Server之视图基础知识的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。