SQL Server 2000資料庫 (3)

來源:互聯網
上載者:User
 

1.3 SQL Server 2000視圖管理視圖是從一個或者多個表或視圖中匯出的表,其結構和資料是建立在對錶的查詢基礎上的。和真實的表一樣,視圖也包括幾個被定義的資料列和多個資料行,但從本質上講,這些資料列和資料行來源於其所引用的表。因此,視圖不是真實存在的基礎資料表,而是一個虛擬表,視圖中所顯示的資料並不以視圖結構儲存在資料庫中,而是儲存在視圖所引用的表中。 下面我們介紹一下如何建立、修改和刪除視圖。 1.3.1 建立視圖建立視圖時應該注意以下情況。 ●      只能在當前資料庫中建立視圖。●      如果視圖引用的基表或者視圖被刪除,則該視圖不能再被使用,直到建立新的基表或者視圖。●      如果視圖中某一列是函數、數學運算式、常量或者來自多個表的列名相同,則必須為列定義名稱。●      不能在視圖上建立索引,不能在規則、預設、觸發器的定義中引用視圖。●      當通過視圖查詢資料時,SQL Server要檢查以確保語句中涉及的所有資料庫物件存在,而且資料修改語句不能違反資料完整性規則。●      視圖的名稱必須遵循標識符的規則,且對每個使用者必須是惟一的。此外,該名稱不得與該使用者擁有的任何錶的名稱相同。SQL Server 2000提供了兩種方法建立資料庫檢視:一種方法是使用視圖設計器建立視圖;另一種是使用Transact-SQL語句中的CREATE命令建立視圖。(1) 使用視圖設計器建立視圖開啟企業管理器,展開指定執行個體的資料庫,選中“視圖”目錄。然後,單擊滑鼠右鍵,在彈出的捷徑功能表中選擇“建立視圖”命令,開啟“視圖設計器”對話方塊。4-17所示。圖4-17 視圖設計器視圖設計器的介面設計同查詢設計工具極為相似。使用者可以根據自己的需要,在設計器中添加表,選擇要顯示的列,組成視圖。因篇幅限制,這裡不再贅述,讀者可參閱上節內容。(2) 使用Transact-SQL語句中的CREATE VIEW命令建立視圖其文法形式如下:CREATE VIEW [ < database_name > .] [ < owner > .] view_name [ ( column [ ,... n ] ) ] [ WITH < view_attribute > [ ,...n ] ] AS select_statement [ WITH CHECK OPTION ] < view_attribute > ::=    { ENCRYPTION | SCHEMABINDING | VIEW_METADATA }其中各參數說明如下。●      view_name:用於指定視圖的名稱,column用於指定視圖中的欄位名稱。●      WITH ENCRYPTION:表示SQL Server加密包含CREATE VIEW語句文本在內的系統資料表列。●      select_statement:用於建立視圖的SELECT語句,使用SELECT命令可以從表中或者視圖中選擇列以構成新視圖的列。 ●      WITH CHECK OPTION:用於強制視圖上執行的所有資料修改語句都必須符合由 select_statement 設定的準則。●      SCHEMABINDING:表示在 select_statement語句中如果包含表、視圖或者引用使用者自訂函數,則表名、視圖名或者函數名前必須有所有者首碼。●      VIEW_ METADATA:表示如果某一查詢中引用該視圖且要求返回瀏覽模式的中繼資料時,那麼SQL Server將向DBLIB和OLE DB APIS返回視圖的中繼資料資訊。例如,建立具有簡單SELECT語句的視圖。當需要頻繁地查詢列的某種組合時,簡單視圖非常有用。本例建立一個名為view_Students的視圖,用於顯示學生的姓名、年齡、系別,其文法如下:USE StudentGOCREATE VIEW view_StudentsASSELECT Sname, Sage, SdptFROM StudentsInfoGO 1.3.2 修改視圖對於已經存在的視圖,讀者可以在“視圖設計器”中對其進行修改。右擊需要修改的視圖,選擇“設計檢視”命令,就可以開啟“視圖設計器”。讀者可以根據自己的需要對視圖進行修改,過程與添加視圖相似。此外,也可以使用Transact-SQL語句中的ALTER VIEW語句修改視圖。使用Transact- SQL語句DROP VIEW刪除視圖的文法形式如下: ALTER VIEW view_name [( column[,... n])] [WITH ENCRYPTION] AS select_statement [ WITH CHECK OPTION ]其中各參數的含義與建立視圖時所使用的基本相同,這裡就不再重複了。 1.3.3 刪除視圖 有相關許可權的使用者,可以將已經存在的視圖刪除。刪除視圖後,表和視圖所基於的資料不受到影響。讀者可以在企業管理器中刪除視圖:右擊要刪除的視圖,在彈出的捷徑功能表中選擇“刪除”命令,開啟“除去對象”對話方塊,4-18所示,單擊“全部除去”按鈕則將視圖刪除。  圖4-18 確認刪除視圖 此外,也可以使用Transact-SQL語句中的ALTER VIEW語句修改視圖。使用Transact- SQL語句DROP VIEW刪除視圖的文法形式如下:DROP VIEW { view_name} [,…n]其中, view_name用於指定要刪除的視圖名稱。可以使用該命令同時刪除多個視圖,只需在要刪除的視圖名稱之間用逗號隔開即可。

 

相關文章

聯繫我們

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