精品熟女碰碰人人a久久,多姿,欧美欧美a v日韩中文字幕,日本福利片秋霞国产午夜,欧美成人禁片在线观看

SQL Server 創建視圖

SQL Server 創建視圖

從用戶角度來看,一個視圖是從一個特定的角度來查看數據庫中的數據 。
從數據庫系統內部來看,一個視圖是由 SELECT 語句組成的查詢定義的虛擬表(因為一個視圖可以拉動多個表,并匯總數據在一起并將其顯示,就好像它是一個單一的表) 視圖是由一張或多張表中的數據組成的,當你運行視圖,會看到它的結果,就像打開一個表時一樣。
從數據庫系統外部來看,視圖就如同一張表一樣,對表能夠進行的一般操作都可以應用于視圖,例如查詢,插入,修改,刪除操作等。

 

SQL Server視圖的優點

視圖可以執行以下操作:

  • 限制訪問特定的表中的行
  • 限制訪問特定的表中的列
  • 從多個表中加入列,并呈現出來,好像他們是一個單一的表的一部分
  • 呈現匯總的信息(如COUNT函數的結果)

 

SQL Server視圖語法

通過使用 CREATE VIEW 語句創建一個視圖,其次是 SELECT 語句,如下:

CREATE VIEW ViewName AS
SELECT ...

 

SQL Server創建視圖

我們以前使用的查詢設計器創建兩個表中選擇數據的查詢。
現在讓我們將查詢保存為一個名為 “ToDoList” 的視圖。
我們需要做的就是把 CREATE VIEW ToDoList 的 AS 查詢,如下:

CREATE VIEW ToDoList AS
SELECT  Tasks.TaskName, Tasks.Description
FROM    Status INNER JOIN
            Tasks ON Status.StatusId = Tasks.StatusId
WHERE   (Status.StatusId = 1)

運行該腳本,在左窗格中刷新瀏覽文件夾,你會看到視圖就在左窗格中:

 

SQL Server 運行視圖

創建視圖后,就可以簡單地查看結果,就像你會選擇任何表。
可以簡單地鍵入 select * from todolist,它會運行完整的查詢,而不是輸入出大量的 SELECT 語句的 INNER JOIN :

注:也可以在視圖上單擊鼠標右鍵,并選擇 "Select Top 1000 Rows".

 

數據更新

該視圖將返回最新的數據。
如果表中的數據發生變化時,視圖的結果會改變過;所以,如果要添加新任務以及狀態 "To Do", 下一次運行來看,這將包括在結果集中的新紀錄。

 

修改視圖

通過使用 ALTER 修改現有的視圖,而不是 CREATE。
如果我們想要更改視圖就要使用 StatusName 字段,而不是 StatusId,做法如下:

ALTER VIEW ToDoList AS
SELECT  Tasks.TaskName, Tasks.Description
FROM    Status INNER JOIN
            Tasks ON Status.StatusId = Tasks.StatusId
WHERE   (Status.StatusName = 'To Do')

注:使用查詢設計器也可以右鍵單擊視圖,然后選擇設計來修改您的視圖。
正如你所看到的,視圖讓您保存查詢,以便可以做一個 SELECT,再次運行它也會比較簡單。
但它們的確有其局限性:它們允許選擇數據,但不允許執行任何業務邏輯,如條件語句等。

下一節:SQL Server 存儲過程

SQL Server 教程

相關文章