視圖與基本表

視圖

很多人對(duì)視圖View感到很沮喪,因?yàn)樗雌饋砀鷖elect語(yǔ)句沒什么區(qū)別扫外。在視圖中我們同樣可以使用select查詢語(yǔ)句墅冷,但是視圖對(duì)我們來說依然非常重要灼狰。

假設(shè)我們要聯(lián)合查詢4張表中的20幾個(gè)字段袱瓮,那么這個(gè)select查詢語(yǔ)句會(huì)非常復(fù)雜缤骨。但是這樣的語(yǔ)句我們?cè)诤芏嗟胤蕉夹枰玫剑绻麑⑺帉懗梢晥D尺借,那么使用起來會(huì)方便很多绊起。

利用視圖查詢有以下幾個(gè)優(yōu)點(diǎn):

  • 一定程度上提高查詢速度
  • 可以對(duì)一些字段根據(jù)不同的權(quán)限進(jìn)行屏蔽,因此提高了安全性
  • 對(duì)多表的連接查詢會(huì)非常方便

下面是一個(gè)視圖的代碼例子:

CREATE 
VIEW viewname
AS
Select ColumNames from yourTable

Example : 
-- Here we create view for our Union ALL example
Create 
VIEW myUnionVIEW
AS
 SELECT M.order_NO,M.Table_ID,D.Order_detail_no,I.Item_Name,D.Notes,D.Qty,I.Price,
        I.Price*D.Qty as TotalPrice
        FROM 
          Ordermasters as M  Inner JOIN OrderDetails as D 
          ON M.Order_NO=D.Order_NO INNER JOIN ItemMasters as I 
          ON   D.Item_Code=I.Item_Code WHERE    I.Price <=44        
Union ALL
 SELECT M.order_NO,M.Table_ID,D.Order_detail_no,I.Item_Name,D.Notes,D.Qty,I.Price,
        I.Price*D.Qty as TotalPrice
        FROM 
          Ordermasters as M  Inner JOIN OrderDetails as D 
          ON M.Order_NO=D.Order_NO INNER JOIN ItemMasters as I 
          ON   D.Item_Code=I.Item_Code  WHERE   I.Price>44

  -- View Select query
  Select * from myUnionVIEW
  -- We can also use the View to display with where condition and with selected fields 

視圖的查詢(SELECT)

對(duì)視圖的查詢會(huì)被轉(zhuǎn)化為對(duì)基本表的查詢燎斩,然后再執(zhí)行修正了的查詢虱歪,這一轉(zhuǎn)換過程稱為試圖消解(view resolution).

視圖的更新(UPDTE, INSERT, DELETE)

由于視圖是不實(shí)際存儲(chǔ)數(shù)據(jù)的虛表,因此對(duì)視圖的更新最重要轉(zhuǎn)換為對(duì)基本表的更新栅表。像查詢視圖那樣笋鄙,對(duì)視圖的更新操作也是通過視圖消解,轉(zhuǎn)化為對(duì)基本表的更新操作谨读。

什么樣的視圖不能更新呢局装?
  1. 如果視圖是由兩個(gè)以上的基本表導(dǎo)出的,則此視圖不允許更新
  2. 如果視圖的字段來自聚合函數(shù)劳殖,則此視圖不允許更新

一般的,行列子集視圖是可更新的

1.視圖是數(shù)據(jù)庫(kù)數(shù)據(jù)的特定子集拨脉《咭觯可以禁止所有用戶訪問數(shù)據(jù)庫(kù)表,而要求用戶只能通過視圖操作數(shù)據(jù)玫膀,這種方法可以保護(hù)用戶和應(yīng)用程序不受某些數(shù)據(jù)庫(kù)修改的影響矛缨。

2.視圖是抽象的,他在使用時(shí),從表里提取出數(shù)據(jù)箕昭,形成虛的表灵妨。不過對(duì)他的操作
有很多的限制 。

  1. 而且視圖是永遠(yuǎn)不會(huì)自己消失的除非你刪除它落竹。 視圖有時(shí)會(huì)對(duì)提高效率有幫助泌霍。臨時(shí)表幾乎是不會(huì)對(duì)性能有幫助,是資源消耗者述召。 視圖一般隨該數(shù)據(jù)庫(kù)存放在一起朱转,臨時(shí)表永遠(yuǎn)都是在tempdb里的。

4.視圖適合于多表連接瀏覽時(shí)使用!不適合增积暖、刪藤为、改.,存儲(chǔ)過程適合于使用較頻繁的SQL語(yǔ)句夺刑,這樣可以提高 執(zhí)行效率!

視圖和表的區(qū)別和聯(lián)系

區(qū)別:

1缅疟、視圖是已經(jīng)編譯好的sql語(yǔ)句。而表不是
2遍愿、視圖沒有實(shí)際的物理記錄窿吩。而表有。
3错览、表是內(nèi)容纫雁,視圖是窗口
4、表只用物理空間而視圖不占用物理空間倾哺,視圖只是邏輯概念的存在轧邪,表可以及時(shí)對(duì)它進(jìn)行修改,但視圖只能有創(chuàng)建的語(yǔ)句來修改
5羞海、表是內(nèi)模式忌愚,視圖是外模式
6、視圖是查看數(shù)據(jù)表的一種方法却邓,可以查詢數(shù)據(jù)表中某些字段構(gòu)成的數(shù)據(jù)硕糊,只是一些SQL語(yǔ)句的集合。從安全的角度說腊徙,視圖可以不給用戶接觸數(shù)據(jù)表简十,從而不知道表結(jié)構(gòu)。
7撬腾、表屬于全局模式中的表螟蝙,是實(shí)表;視圖屬于局部模式的表民傻,是虛表胰默。
8场斑、視圖的建立和刪除只影響視圖本身,不影響對(duì)應(yīng)的基本表牵署。

聯(lián)系:

視圖(view)是在基本表之上建立的表漏隐,它的結(jié)構(gòu)(即所定義的列)和內(nèi)容(即所有數(shù)據(jù)行)都來自基本表,它依據(jù)基本表存在而存在奴迅。一個(gè)視圖可以對(duì)應(yīng)一個(gè)基本表青责,也可以對(duì)應(yīng)多個(gè)基本表。視圖是基本表的抽象和在邏輯意義上建立的新關(guān)系半沽。

[視圖和表的區(qū)別]

數(shù)據(jù)庫(kù)中的數(shù)據(jù)都是存儲(chǔ)在表中的爽柒,而視圖只是一個(gè)或多個(gè)表依照某個(gè)條件組合而成的結(jié)果集,一般來說你可以用update者填,insert浩村,delete等sql語(yǔ)句修改表中的數(shù)據(jù),而對(duì)視圖只能進(jìn)行select操作占哟。但是也存在可更新的視圖心墅,對(duì)于這類視圖的update,insert和delete等操作最終會(huì)作用于與其相關(guān)的表中數(shù)據(jù)榨乎。因此怎燥,表是數(shù)據(jù)庫(kù)中數(shù)據(jù)存儲(chǔ)的基礎(chǔ),而視圖只是為了滿足某種查詢要求而建立的一個(gè)對(duì)象蜜暑。

表是物理存在的铐姚,你可以理解成計(jì)算機(jī)中的文件!
視圖是虛擬的內(nèi)存表肛捍,你可以理解成Windows的快捷方式隐绵!

1.視圖是數(shù)據(jù)庫(kù)數(shù)據(jù)的特定子集∽竞粒可以禁止所有用戶訪問數(shù)據(jù)庫(kù)表依许,而要求用戶只能通過視圖操作數(shù)據(jù),這種方法可以保護(hù)用戶和應(yīng)用程序不受某些數(shù)據(jù)庫(kù)修改的影響缀蹄。2.視圖是抽象的峭跳,他在使用時(shí),從表里提取出數(shù)據(jù)缺前,形成虛的表蛀醉。 不過對(duì)他的操作有很多的限制 。
3. 而且視圖是永遠(yuǎn)不會(huì)自己消失的除非你刪除它诡延。
視圖有時(shí)會(huì)對(duì)提高效率有幫助滞欠。臨時(shí)表幾乎是不會(huì)對(duì)性能有幫助,是資源消耗者肆良。
視圖一般隨該數(shù)據(jù)庫(kù)存放在一起筛璧,臨時(shí)表永遠(yuǎn)都是在tempdb里的。
4.視圖適合于多表連接瀏覽時(shí)使用!不適合增惹恃、刪夭谤、改.,存儲(chǔ)過程適合于使用較頻繁的SQL語(yǔ)句巫糙,這樣可以提高 執(zhí)行效率!

視圖和表的區(qū)別和聯(lián)系

區(qū)別:
2朗儒、視圖沒有實(shí)際的物理記錄。而表有参淹。
3醉锄、表是內(nèi)容,視圖是窗口
4浙值、表只用物理空間而視圖不占用物理空間恳不,視圖只是邏輯概念的存在,表可以及時(shí)對(duì)它進(jìn)行修改开呐,但視圖只能有創(chuàng)建的語(yǔ)句來修改
5烟勋、表是內(nèi)模式,視圖是外模式
6筐付、視圖是查看數(shù)據(jù)表的一種方法卵惦,可以查詢數(shù)據(jù)表中某些字段構(gòu)成的數(shù)據(jù),只是一些SQL語(yǔ)句的集合瓦戚。從安全的角度說沮尿,視圖可以不給用戶接觸數(shù)據(jù)表,從而不知道表結(jié)構(gòu)较解。
7畜疾、表屬于全局模式中的表,是實(shí)表哨坪;視圖屬于局部模式的表庸疾,是虛表。
8当编、視圖的建立和刪除只影響視圖本身届慈,不影響對(duì)應(yīng)的基本表。

聯(lián)系:視圖(view)是在基本表之上建立的表忿偷,它的結(jié)構(gòu)(即所定義的列)和內(nèi)容(即所有數(shù)據(jù)行)都來自基本表金顿,它依據(jù)基本表存在而存在。一個(gè)視圖可以對(duì)應(yīng)一個(gè)基本表鲤桥,也可以對(duì)應(yīng)多個(gè)基本表揍拆。視圖是基本表的抽象和在邏輯意義上建立的新關(guān)系。

表和試圖區(qū)別:
1茶凳、視圖只是一些SQL語(yǔ)句的集合嫂拴,是查看數(shù)據(jù)表的一種方法播揪,從安全的角度說,視圖可以不給用戶接觸數(shù)據(jù)表筒狠,從而不知道表結(jié)構(gòu)猪狈。

2、表占用物理空間而視圖不占用物理空間辩恼,視圖只是邏輯概念的存在雇庙,表可以及時(shí)對(duì)它進(jìn)行修改,但視圖只能有創(chuàng)建的語(yǔ)句來修改灶伊。

  3疆前、視圖的建立和刪除只影響視圖本身,不影響對(duì)應(yīng)的基本表聘萨。
  4竹椒、表是內(nèi)容,視圖是窗口

  5匈挖、表屬于全局模式中的表碾牌,是實(shí)表;視圖屬于局部模式的表儡循,是虛表舶吗。 




聯(lián)系:
視圖是在基本表之上建立的表,它的結(jié)構(gòu)(列)和內(nèi)容(即所有數(shù)據(jù)行)都來自基本表择膝,表是視圖的基礎(chǔ)誓琼,沒有表 ,視圖則無從談起肴捉。一個(gè)視圖可以對(duì)應(yīng)一個(gè)或多個(gè)基本表腹侣。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市齿穗,隨后出現(xiàn)的幾起案子傲隶,更是在濱河造成了極大的恐慌,老刑警劉巖窃页,帶你破解...
    沈念sama閱讀 221,406評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件跺株,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡脖卖,警方通過查閱死者的電腦和手機(jī)乒省,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,395評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來畦木,“玉大人袖扛,你說我怎么就攤上這事∈” “怎么了蛆封?”我有些...
    開封第一講書人閱讀 167,815評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵唇礁,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我娶吞,道長(zhǎng)垒迂,這世上最難降的妖魔是什么械姻? 我笑而不...
    開封第一講書人閱讀 59,537評(píng)論 1 296
  • 正文 為了忘掉前任妒蛇,我火速辦了婚禮,結(jié)果婚禮上楷拳,老公的妹妹穿的比我還像新娘绣夺。我一直安慰自己,他們只是感情好欢揖,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,536評(píng)論 6 397
  • 文/花漫 我一把揭開白布陶耍。 她就那樣靜靜地躺著,像睡著了一般她混。 火紅的嫁衣襯著肌膚如雪烈钞。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,184評(píng)論 1 308
  • 那天坤按,我揣著相機(jī)與錄音毯欣,去河邊找鬼。 笑死臭脓,一個(gè)胖子當(dāng)著我的面吹牛酗钞,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播来累,決...
    沈念sama閱讀 40,776評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼砚作,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了嘹锁?” 一聲冷哼從身側(cè)響起葫录,我...
    開封第一講書人閱讀 39,668評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎领猾,沒想到半個(gè)月后米同,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,212評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡瘤运,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,299評(píng)論 3 340
  • 正文 我和宋清朗相戀三年窍霞,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拯坟。...
    茶點(diǎn)故事閱讀 40,438評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡但金,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出郁季,到底是詐尸還是另有隱情冷溃,我是刑警寧澤钱磅,帶...
    沈念sama閱讀 36,128評(píng)論 5 349
  • 正文 年R本政府宣布,位于F島的核電站似枕,受9級(jí)特大地震影響盖淡,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜凿歼,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,807評(píng)論 3 333
  • 文/蒙蒙 一褪迟、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧答憔,春花似錦味赃、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,279評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至蓉驹,卻和暖如春城榛,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背态兴。 一陣腳步聲響...
    開封第一講書人閱讀 33,395評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工狠持, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人诗茎。 一個(gè)月前我還...
    沈念sama閱讀 48,827評(píng)論 3 376
  • 正文 我出身青樓工坊,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親敢订。 傳聞我的和親對(duì)象是個(gè)殘疾皇子王污,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,446評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容