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

善用 SQL Server 擴充屬性:像 Access 一樣為資料欄位加上說明

     編輯:關於SqlServer

前言

Access 的設計檢視提供「欄位說明」功能,讓開發人員一眼看懂每個欄位的用途。SQL Server 雖無內建同等介面,但透過擴充屬性即可達到相同效果,並能以結果集形式輸出,方便前端應用動態顯示欄位中文說明。

操作步驟

1. 新增擴充屬性 (T-SQL)

-- 為 clIEntInfo 資料表的 CRid 欄位加上說明
EXEC sp_addextendedproperty 
    'CRid', N'表示ID', 
    'user', dbo, 
    'table', 'clIEntInfo', 
    'column', CRid;
GO

-- 為 Rname 欄位加上說明
EXEC sp_addextendedproperty 
    N'人名', N'顯示客戶姓名', 
    'user', dbo, 
    'table', 'clIEntInfo', 
    'column', Rname;
GO

亦可在 Enterprise Manager 或 Query Analyzer 中,右鍵點選欄位 →「擴充屬性」以圖形介面新增。

2. 查詢所有欄位說明

SELECT name, value 
FROM ::fn_listextendedproperty(
    default, 'user', 'dbo', 'table', 'clIEntInfo', 'column', default
);
GO

執行結果範例

namevalue
CRid表示ID
人名顯示客戶姓名

關鍵函數解析:fn_listextendedproperty

  • 為系統資料表值函數,呼叫時前方需加 ::
  • 第 1 參數:指定屬性名稱,用 default 或 NULL 表示全部
  • 第 2~7 參數:遵循 SQL Server 物件命名階層 (user, table, column 等),同樣可用 default 代表全部

詳細參數說明請參閱線上叢書 (BOL)。

應用場景

  • 動態產生資料字典文件
  • 前端表單自動顯示欄位工具提示
  • 資料庫文件化與團隊溝通
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved