首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 建立與管理視圖完整教學:Enterprise Manager 與 T-SQL 雙軌實戰

     編輯:關於SqlServer

13.10.1 建立視圖的兩大途徑與核心注意事項

SQL Server 提供 Enterprise Manager 圖形化介面 與 Transact-SQL (T-SQL) 指令 兩種建立視圖的方式。無論採用哪種方式,建立或使用視圖前必須掌握以下關鍵規則:

  • 範圍限制:視圖只能建立於當前資料庫,最多引用 1,024 個欄位
  • 相依性風險:若視圖引用的資料表被刪除,使用視圖時將報錯;重建同結構資料表可恢復,否則須重建視圖
  • 欄位命名強制性:視圖欄位若為函數、數學運算式、常數或來自多表同名欄位,必須顯式指定別名
  • 功能限制:早期版本不支援在視圖上建立索引、在規則/預設值/觸發器定義中引用視圖
  • 驗證機制:查詢視圖時,SQL Server 會檢查引用資料表是否存在、有效,並驗證資料修改是否違反完整性約束;通過則轉換為對基礎資料表的查詢

方法一:使用 Enterprise Manager 圖形化建立視圖

操作步驟詳解

  1. 啟動與連線:開啟 SQL Server Enterprise Manager,登入目標伺服器
  2. 定位資料庫:展開目標資料庫資料夾,選取 Views(視圖) 圖示,右鍵選單中點選 New View(新增視圖)
  3. 認識 New View 對話框四大區塊:
    • 資料表區:選取參與視圖的基礎資料表
    • 欄位區:勾選需納入視圖的欄位、設定別名、排序與篩選條件
    • SQL Script 區:即時顯示自動生成的 T-SQL 碼
    • 資料結果區:即時預覽視圖查詢結果(初始為空白)
New View 對話框介面示意圖
  1. 新增資料表:點擊工具列 「新增資料表」按鈕(圖示為帶有「+」號的資料表圖標),開啟「加入資料表」對話框,選取所需資料表並點選 Add(新增)
新增資料表按鈕圖示
加入資料表對話框

方法二:使用 T-SQL 指令建立視圖(語法範本)

CREATE VIEW [schema_name.]view_name [(column_alias [,...n])]
[WITH ENCRYPTION | SCHEMABINDING | VIEW_METADATA] [...]
AS
SELECT select_statement
[WITH CHECK OPTION]

關鍵選項說明:

  • WITH ENCRYPTION:加密視圖定義文本
  • WITH SCHEMABINDING:綁定結構描述,防止基礎物件被意外修改(建立索引視圖的前置條件)
  • WITH CHECK OPTION:確保透過視圖修改的資料符合視圖的 WHERE 條件

視圖管理進階操作

修改視圖:ALTER VIEW

不需刪除重建即可修改視圖定義,保留權限設定:

ALTER VIEW view_name
AS
SELECT new_select_statement

刪除視圖:DROP VIEW

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

檢視視圖定義

  • sp_helptext 'view_name':顯示視圖建立腳本
  • OBJECT_DEFINITION(OBJECT_ID('view_name')):程式化取得定義

重新命名視圖

EXEC sp_rename 'old_view_name', 'new_view_name'

實戰建議

  • 優先使用 SCHEMABINDING 保護視圖相依性
  • 複雜視圖建議採用 T-SQL 腳本版本控管
  • 定期清理無用視圖,降低系統目錄負擔
  • 授權時遵循最小權限原則,僅授予 SELECT/INSERT/UPDATE 等必要權限
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved