Sql Server系列:檢視

libingql發表於2014-12-05

  檢視是資料庫中的一種虛擬表,與真實的表一樣,檢視包含一系列帶有名稱的行和列資料。行和列資料用來自定義檢視的查詢所引用的表,並且在引用檢視時動態生成。

1. 檢視的概念

  檢視是從一個或者多個表中匯出的,其行為與表相似,但檢視是一個虛擬表。檢視可以在已經存在的檢視的基礎上定義。在檢視上使用者可以使用SELECT語句查詢資料庫,使用INSERT、UPDATE和DELETE語句修改記錄。對於檢視的操作最終轉化為對基本資料表的操作。

2. 建立檢視

  使用T-SQL建立檢視語法:

CREATE VIEW [ schema_name . ] view_name [ (column [ ,...n ] ) ] 
[ WITH <view_attribute> [ ,...n ] ] 
AS select_statement 
[ WITH CHECK OPTION ] 
[ ; ]

  例項:

  單表檢視

CREATE VIEW [dbo].[V_Product]
AS
    SELECT [ProductID],[ProductName]
    FROM [dbo].[Product]

  多表檢視

CREATE VIEW [dbo].[V_ProductCategory]
AS
    SELECT [ProductID],[CategoryName],[ProductName]
    FROM [dbo].[Product] INNER JOIN [dbo].[Category]
    ON [dbo].[Product].[CategoryID] = [dbo].[Category].[CategoryID]

  建立排序檢視

CREATE VIEW [dbo].[V_Product]
AS
    SELECT TOP 100 PERCENT [ProductID],[ProductName]
    FROM [dbo].[Product]
    ORDER BY [UnitPrice]

3. 修改檢視

  使用T-SQL修改檢視語法:

ALTER VIEW [ schema_name . ] view_name [ ( column [ ,...n ] ) ] 
[ WITH <view_attribute> [ ,...n ] ] 
AS select_statement 
[ WITH CHECK OPTION ] [ ; ]

4. 檢視檢視

  檢視檢視結構:

EXEC sp_help [V_Product]

  檢視檢視文字:

EXEC sp_helptext [V_Product]

5. 刪除檢視

  T-SQL刪除檢視語法:

DROP VIEW [ schema_name . ] view_name [ ...,n ] [ ; ]

  刪除單個檢視:

DROP VIEW [V_Product]

  刪除多個檢視:

DROP VIEW [V_Product],[V_ProductCategory]

相關文章