數據庫的視圖和索引的概念區別總結


數據庫的視圖和索引

視圖

什么是視圖

  • 視圖是從一個或多個表中導出來的表,是一種不是一種真正存在的概念。

  • 視圖就像一個窗口,通過這個窗口可以看到系統專門提供的數據。這樣,用戶可以不用看到整個數據庫中的數據,而之關心對自己有用的數據。

  • 數據庫中只存放了視圖的定義,而沒有存放視圖中的數據,這些數據存放在原來的表中。

  • 使用視圖查詢數據時,數據庫系統會從原來的表中取出對應的數據。

  • 視圖中的數據依賴於原來表中的數據,一旦表中數據發生改變,顯示在視圖中的數據也會發生改變。

目的

安全、高效、定制數據

索引

可以理解為是一本書的目錄,它記錄了數據在數據庫中存放的位置,就像一本書的目錄,記錄了,某一頁在這本書的那個位置。相同地, 索引是一個單獨的、存儲在磁盤上的數據庫結構,它們包含着對數據庫表里所有記錄的引用指針。

目的

數據庫索引是為了使查詢數據效率快。

索引的分類和使用

按物理存儲角度分:

  • 聚集索引

表記錄的排列順序和索引的排列順序一致,所以查詢效率快,只要找到第一個索引值記錄,其余連續性的記錄在物理上一樣連續存放.聚集索引的缺點就是修改慢,因為為了使表記錄和索引的排列順序一致,在插入記錄的時候,會對數據頁重新排序

  • 非聚集索引

表記錄和索引的排列順序不一定一致,兩種索引都采用B+樹的結構,非聚集索引的葉子層並不和實際數據頁相重疊,而采用葉子層包含一個指向表記錄的指針.非聚集索引層次多,不會造成數據重排

按邏輯角度分

  • 主鍵索引

  • 唯一索引

  • 聯合索引

  • 普通索引


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM