西瓜:資料庫的視圖,索引操作

2021-01-12 西瓜頭玩電腦

視圖概述

視圖和表一樣,也包括幾個被定義的數據列和多個數據行,但就本質而言,這些數據列和數據行來源於視圖所引用的表,所以視圖不是真實存在的物理表,而是一張虛表。

基於單表的視圖創建以後,可以通過視圖對源表數據進行添加、刪除、修改和查詢操作。

創建視圖

1、使用SSMS創建視圖(演示)

2、使用T-SQL腳本創建視圖

語法:

Create view 視圖名稱

as

select 語

使用聚合函數創建視圖

創建視圖的查詢語句中可以使用聚合函數,可以進行分組查詢

顯示用戶定義規則的定義、默認值、未加密的 Transact-SQL 存儲過程、用戶定義 Transact-SQL 函數、觸發器、計算列、CHECK 約束、視圖或系統對象(如系統存儲過程)。

索引的概念

資料庫中的索引是一個列表,在這個列表中包含了某個表中一列或者若干列值的集合,以及這些值的記錄在數據表中的存儲位置的物理地址

索引的優點

可以大大加快數據檢索速度。

通過創建唯一索引,可以保證數據記錄的唯一性。

在使用ORDER BY和GROUP BY子句進行檢索數據時,可以顯著減少查詢中分組和排序的時間。

使用索引可以在檢索數據的過程中使用優化隱藏器,提高系統性能。

可以加速表與表之間的連接,這一點在實現數據的參照完整性方面有特別的意義。

使用T-SQL語句創建索引

利用Transact-SQL語句中的CREATE INDEX命令可以創建索引,CREATE INDEX命令既可以創建一個可改變表的物理順序的聚集索引,也可以創建提高查詢性能的非聚集索引 。

使用T-SQL語句刪除索引

2 使用Transact-SQL語句刪除索引

當不再需要某個索引時,可以使用Transact-SQL語句中的DROP INDEX命令刪除索引。DROP INDEX命令可以刪除一個或者多個當前資料庫中的索引

操作要求:

(1)在Users表的u_Name列上創建非聚集索引idx_UsersName。(SSMS)

(2)在OrderDetails表的o_ID列和g_ID列上創建複合非聚集索引idx_OID_GID。(SSMS)

(3)查看所建索引idx_UsersName和idx_OID_GID的基本信息。(SSMS)

(4)刪除所建的索引idx_UsersName和idx_OID_GID。(SSMS)

(5)在Employees表中創建基於e_Name列的非聚集索引idx_EName。(T-SQL)

(6)在Orders表中創建基於e_ID列的非聚集索引idx_EID。(T-SQL)

相關焦點

  • 2020 年資料庫高頻面試題|原力計劃
    但是,視圖並不在資料庫中以儲存的數據值形式存在。行和列數據來自定義視圖的查詢所引用基本表,並且在具體引用視圖時動態生成。視圖使開發者只關心感興趣的某些特定數據和所負責的特定任務,只能看到視圖中所定義的數據,而不是視圖所引用表中的數據,從而提高了資料庫中數據的安全性。2、視圖有哪些特點?
  • 從原理到優化,深入淺出資料庫索引 - 計算機java編程
    MySQL官方對索引的定義為:索引(Index)是幫助MySQL高效獲取數據的數據結構。資料庫查詢是資料庫的最主要功能之一,我們都希望查詢數據的速度能儘可能的快,因此資料庫系統的設計者會從查詢算法的角度進行優化,這篇文章對索引做一個系統的梳理,希望對大家有幫助。
  • 資料庫面試常見問題:前綴索引、索引下推-開課吧
    資料庫面試1、前綴索引因為可能我們索引的欄位常,這既佔內存空間,也不利於維護。所以我們就想,如果只把很欄位的前的公共部分作為個索引,就會產超級加倍的效果。索引下推 (阿社招 )MySQL 5.6引了索引下推優化。默認開啟,使 SET optimizer_switch = 『index_condition_pushdown=offff』; 可以將其關閉。
  • 使用ELASTICSEARCH進行近實時索引
    您可以採用以下策略:隨著數據的出現而建立索引–您可以同時插入資料庫並建立索引。如果沒有太多數據,這是有道理的。否則索引將變得非常低效。存儲在資料庫中,並與計劃的作業一起建立索引–這可能是最常見的方法,並且易於實現。
  • 零基礎學Oracle之6:Oracle數字字典和動態視圖的理解
    1、 本部分介紹二個內容數字字典和動態視圖。這二個都是一些表,數字字典是一些相對靜態的信息,動態視圖是一些相對動態表。基表舉例:IND$,包含數據的索引信息。數據字典視圖:視圖就是以某種角度來看在執行$ORACLE_HOME/rdbms/admin/catalog.sql,catproc.sql腳本時創建。數據字典的內容:審計、用戶被賦予的特權和角色、用戶名字、完整性約束、資源的分配情況、邏輯和物理結構。
  • 大數據之HBASE資料庫
    HBase(Hadoop Database)是一個高可靠性、高性能、面向列、可伸縮的分布式資料庫,典型的 NoSQL資料庫。2010年5月,Apache HBase 從 Hadoop脫離,成為 Apache 基金的頂級項目。
  • 圖資料庫的類別有哪些?數易軒解讀:圖資料庫分類與原理
    圖資料庫作為新興NoSQL資料庫的代表,可以分為四種類型。圖資料庫應用廣泛,無論是網際網路行業還是傳統的金融、地產、醫療等行業,都可以通過圖資料庫的應用進一步提升企業效率。數易軒致力於圖資料庫技術服務,為您介紹圖資料庫的四個分類。
  • 第七章SQLServer 2012視圖、存儲、觸發器
    視圖是一個虛似表,和真實的表一樣,視圖包含一系列帶有名稱的列和行數據。為了屏蔽數據的複雜性,簡化用戶對數據的操作,保護數據安全,常常創建不同的視圖。一、視圖的作用1、使用視圖,可以簡化數據操作。專業ON 班級.專業代碼=專業.專業代碼join系部ON 專業.系部代碼=系部.系部代碼SQLServer 2005 視圖三、視圖的操作創建視圖有以下限制(1)只能在當前資料庫中創建(2)用戶創建視圖嵌套不能超過32層(3)不能將規則或默認定義與視圖相關(4)定義視圖查詢不能包含COMPUTE
  • 聊完了mysql索引,面試官直接給我漲了2000!
    索引就相當於我們字典中的目錄,可以極大的提高我們在資料庫的查詢效率。並且作為N叉樹,在樹的每一層都可以存儲很多數據,這樣在資料庫查詢數據的時候最差也只需要幾次磁碟尋址就可以了。在mysql中有主鍵索引和非主鍵索引之分,主鍵索引上存儲的是數據行信息,非主鍵索引上存儲的是主鍵信息。
  • Mysql資料庫部分
    也可以利用資料庫的集合操作來實現此功能。語句11:聯合查詢(UNION JOIN)例句,還沒有找到能執行的SQL環境。語句12:語句11在DB2下的等價實現。還不知道DB2是否支持語句11呢!語句13:語句11在Oracle下的等價實現。
  • 前沿探索:騰訊雲資料庫自治服務最佳實現
    上圖所示是一張關於資料庫自治的宏觀視圖。,使得人工操作遇到了瓶頸,成本也到了需要轉型的階段,因此資料庫自治平臺從內部開始逐漸孵化。不僅提供索引的建議,還會提供語句的改寫和排序欄位的選擇。 DBbrain 在索引分析方面考慮的更為全面。比如在增加索引時,會考慮是否有冗餘索引,是否有現成的索引可以使用或者修改。其次在索引更新後,還會評估對於用戶已有的SQL是否會有影響,從而使得資料庫性能下降等?
  • 資料庫按章分類?啊啊啊
    設計資料庫的有力工具,是資料庫設計人員與用戶交流的語言。數據模型的概念、作用、組成數據模型是資料庫用來對現實世界進行抽象的工具,是資料庫總用於提供信息表示和操作手段的形式架構。數據模型是嚴格定義的概念的集合,這些概念描述了資料庫的靜態特性,動態特性和完整性約束條件。數據結構,數據操作,完整性約束。
  • 百密一疏,防不勝防,細數那些大型資料庫建設過程中繞不開的坑
    構建大型資料庫時,無論最開始的設計多麼精妙,到後續操作的時候或多或少都會遇到一些問題,本文將來細數大型資料庫中不可避免會遇到的問題。穩定性:某些操作的風險太大,例如無法預估性能的批處理更新操作。成本:最佳實踐經驗太過於昂貴,例如遷移大量的現有數據。省事:有時為了快速交付項目,我們不得不「走一些捷徑」。由於上述種種原因,我們不得不在一開始就考慮複雜的資料庫系統。
  • 使用HBMO選擇物化視圖(EI)
    它是從一個或多個大規模維度表中臨時計算的,並且由於大量昂貴的連接操作,計算非常昂貴。它大大增加了查詢處理時間,使分析過程效率下降和降低了從中獲得的信息。視圖是虛擬的和不穩定的,每當再次提出過去的查詢時,都必須重新計算視圖;這種查詢處理方法顯然非常低效。
  • 索引_期刊_影響因子_分區詳解
    《工程索引》(The EngineeringIndex,簡稱EI)創刊於1884年,是美國工程信息公司(Engineeringinformation Inc.)出版的著名工程技術類綜合性檢索工具。EI每月出版1期,文摘1.3萬至1.4萬條;每期附有主題索引與作者索引;每年還另外出版年卷本和年度索引,年度索引還增加了作者單位索引。
  • 如何在SQL Server中解密視圖
    解:有時我們不希望任何人對我們的視圖進行更改,或者不希望任何人對我們的資料庫對象進行更改。當出於安全目的而必須創建加密資料庫對象或需要編輯加密記錄時,您可能會遇到這種情況。依賴SQL Server的公司需要查看或編輯加密的存儲過程,視圖,函數等。
  • MySQL資料庫筆記
    16、結構化查詢語言:DML 數據操作語言 insert(增) update(改) delete(刪)這些都是對於表中數據的操作DDL 數據定義語言 create(創建資料庫或者表) drop(刪除資料庫或者表) alter(改資料庫名字或者表的欄位等)DQL 數據查詢語言
  • DDL跟資料庫關係介紹
    資料庫模式定義語言DDL(Data Definition Language),是用於描述資料庫中要存儲的現實世界實體的語言。這些定義包括結構定義、操作方法定義等。資料庫模式定義語言並非程序設計語言,DDL資料庫模式定義語言是SQL語言(結構化查詢語言)的組成部分。
  • 3dmax一鍵取消視圖背景網格的快捷鍵和操作方法
    3dmax怎麼一鍵取消視圖背景網格?3dmax的視圖網格是默認出現的,可能會有人覺得建模過程中網格比較礙事,那麼,怎樣才能取消顯示3dmax視圖背景網格呢?本期,就來和模型雲看看3dmax一鍵取消視圖背景網格的快捷鍵和操作方法吧!