資料庫中建立視圖和索引還有預存程序起什麼作用?

來源:互聯網
上載者:User
視圖可以被看成是虛擬表或儲存查詢。可通過視圖訪問的資料不作為獨特的Object Storage Service在資料庫內。資料庫記憶體儲的是 SELECT 語句。SELECT 語句的結果集構成視圖所返回的虛擬表。使用者可以用參考資料表時所使用的方法,在 Transact-SQL 陳述式中通過引用視圖名稱來使用虛擬表。使用視圖可以實現下列任一或所有功能:

將使用者限定在表中的特定行上。
例如,只允許僱員看見工作跟蹤表內記錄其工作的行。

將使用者限定在特定列上。
例如,對於那些不負責處理工資單的僱員,只允許他們看見僱員表中的姓名列、辦公室列、公司電話列和部門列,而不能看見任何包含工資資訊或個人資訊的列。

將多個表中的列聯結起來,使它們看起來象一個表。

彙總資訊而非提供詳細資料。
例如,顯示一個列的和,或列的最大值和最小值。
------------------
資料庫中的索引與書籍中的索引類似。在一本書中,利用索引可以快速尋找所需資訊,無須閱讀整本書。在資料庫中,索引使資料庫程式無須對整個表進行掃描,就可以在其中找到所需資料。
------------------
預存程序可以使得對資料庫的管理、以及顯示關於資料庫及其使用者資訊的工作容易得多。預存程序是 SQL 陳述式和可選控制流程語句的先行編譯集合,以一個名稱儲存並作為一個單元處理。預存程序儲存在資料庫內,可由應用程式通過一個調用執行,而且允許使用者聲明變數、有條件執行以及其它強大的編程功能。

預存程序可包含程式流、邏輯以及對資料庫的查詢。它們可以接受參數、輸出參數、返回單個或多個結果集以及傳回值。

可以出於任何使用 SQL 陳述式的目的來使用預存程序,它具有以下優點:

可以在單個預存程序中執行一系列 SQL 陳述式。

可以從自己的預存程序內引用其它預存程序,這可以簡化一系列複雜語句。

預存程序在建立時即在伺服器上進行編譯,所以執行起來比單個 SQL 陳述式快。 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.