資料庫檢視介紹__資料庫

來源:互聯網
上載者:User

什麼是視圖:

  視圖(view):從一個或幾個基本表中根據使用者需要而做成一個虛表

  1:視圖是虛表,它在儲存時只儲存視圖的定義,而沒有儲存對應的資料

  2:視圖只在剛剛開啟的一瞬間,通過定義從基表中搜集資料,並展現給使用者

  視圖與查詢的區別:

  視圖和查詢都是用由sql語句組成,這是他們相同的地方,但是視圖和查詢有著本質區別:

  它們的區別在於:

  1:儲存上的區別:視圖儲存為資料庫設計的一部分,而查詢則不是.

  2:更新限制的要求不一樣

  要注意:因為視圖來自於表,所以通過視圖可以間接對錶進行更新,我們也可以通過update語句對錶進行更新,但是對視圖和查詢更新限制是不同的,以下我們會知道雖然通過視圖可以間接更新表但是有很多限制.

  3:排序結果:通過sql語句,可以對一個表進行排序,而視圖則不行。比如:建立一個含有order by子句的視圖,看一下可以成功嗎。

  視圖的優點: 

  為什麼有了表還要引入視圖呢。這是因為視圖具有以下幾個優點:

  1:能分割資料,簡化觀點。可以通過select和where來定義視圖,從而可以分割資料基表中某些對於使用者不關心的資料,使使用者把注意力集中到所關心的資料列.進一步簡化瀏覽資料工作

  2:為資料提供一定的邏輯獨立性。 如果為某一個基表定義一個視圖,即使以後基本表的內容的發生改變了也不會影響“視圖定義”所得到的資料

  3:提供自動的安全保護功能。 視圖能像基本表一樣授予或撤消訪問許可權

  4:視圖可以間接對錶進行更新,因此視圖的更新就是表的更新

      視圖的安全性

       視圖的安全性可以防止未授權使用者查看特定的行或列,是使用者只能看到表中特定行的方法如下:

       1 在表中增加一個標誌使用者名稱的列;

       2 建立視圖,是使用者只能看到標有自己使用者名稱的行;

       3 把視圖授權給其他使用者。

      邏輯資料獨立性

       視圖可以使應用程式和資料庫表在一定程度上獨立。如果沒有視圖,應用一定是建立在表上的。有了視圖之後,程式可以建立在視圖之上,從而程式與資料庫表被視圖分割開來。視圖可以在以下幾個方面使程式與資料獨立:

       1 如果應用建立在資料庫表上,當資料庫表發生變化時,可以在表上建立視圖,通過視圖屏蔽表的變化,從而應用程式可以不動。

       2 如果應用建立在資料庫表上,當應用發生變化時,可以在表上建立視圖,通過視圖屏蔽應用的變化,從而使資料庫表不動。

       3 如果應用建立在視圖上,當資料庫表發生變化時,可以在表上修改視圖,通過視圖屏蔽表的變化,從而應用程式可以不動。

       4 如果應用建立在視圖上,當應用發生變化時,可以在表上修改視圖,通過視圖屏蔽應用的變化,從而資料庫可以不動。

  視圖的建立和管理

  視圖的建立

  1:通過sql語句

  格式:create view 視圖名 as select 語句

   試一試:分別建立關於一個表或多個表的視圖[因為視圖可以來自於多表]

  2:通過企業管理器  

   說明:

  1:在完成視圖的創立之後,就可以像使用基本表一樣來使用視圖

  2:在建立視圖時,並非所有的select子查詢都可用,如:compute和compute by,order by[除非與top一起連用] 

  3:但在查詢時,依然都可以用在建立時禁用的select子查詢

  4:在視圖建立時,必須為沒有標題列指定標題[思考:能否不用select語句來建立一個視圖]
 
  視圖的刪除:

  1:通過sql語句:drop view 視圖名

  2:通過企業管理器

  說明:與刪除表不同的是,刪除視圖後只是刪除了視圖了定義,並沒有刪除表中的資料.[查看相關性]
 
  修改視圖的定義

  1:通過企業管理器

  2:通過sql語句:

  格式:alter view 視圖名 as 新的select語句

  瀏覽視圖資訊 sp_helptext 視圖名 [查看視圖建立的語句]

  

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.