fn_listextendedproperty (Transact-SQL)
傳回資料庫物件的擴充屬性值。
fn_listextendedproperty (
{ default | 'property_name' | NULL }
, { default | 'level0_object_type' | NULL }
, { default | 'level0_object_name' | NULL }
, { default | 'level1_object_type' | NULL }
, { default | 'level1_object_name' | NULL }
, { default | 'level2_object_type' | NULL }
, { default | 'level2_object_name' | NULL }
)
- { default | 'property_name' | NULL}
-
這是屬性名稱。property_name 是 sysname。有效的輸入是預設值、NULL 或屬性名稱。
- { default | 'level0_object_type' | NULL}
-
這是使用者類型或使用者自訂類型。level0_object_type 是 varchar(128),預設值是 NULL。有效輸入如下:ASSEMBLY、CONTRACT、EVENT NOTIFICATION、FILEGROUP、MESSAGE TYPE、PARTITION FUNCTION、PARTITION SCHEME、REMOTE SERVICE BINDING、ROUTE、SCHEMA、SERVICE、TRIGGER、TYPE、USER 和 NULL。
重要事項: 在未來的 SQL Server 版本中,會移除層級 0 類型的 USER 和 TYPE。請避免在新的開發工作中使用這些功能,並規劃修改目前使用這些功能的應用程式。請改用 SCHEMA 來作為層級 0 類型,而不是使用 USER。如果是 TYPE,請使用 SCHEMA 作為層級 0 類型,並使用 TYPE 作為層級 1 類型。
- { default | 'level0_object_name' | NULL }
-
這是指定之層級 0 物件類型的名稱。level0_object_name 是 sysname,預設值是 NULL。有效的輸入是預設值、NULL 或物件名稱。
- { default | 'level1_object_type' | NULL }
-
這是層級 1 物件的類型。level1_object_type 是 varchar(128),預設值是 NULL。有效輸入如下:AGGREGATE、DEFAULT、FUNCTION、LOGICAL FILE NAME、PROCEDURE、QUEUE、RULE、SYNONYM、TABLE、TYPE、VIEW、XML SCHEMA COLLECTION 和 NULL。
附註: 預設值對應到 NULL,'default' 對應到物件類型 DEFAULT。
- {default | 'level1_object_name' |NULL }
-
這是指定之層級 1 物件類型的名稱。level1_object_name 是 sysname ,預設值是 NULL。有效的輸入是預設值、NULL 或物件名稱。
- { default | 'level2_object_type' |NULL }
-
這是層級 2 物件的類型。level2_object_type 是 varchar(128),預設值是 NULL。有效輸入有 DEFAULT、預設值 (對應到 NULL) 和 NULL。level2_object_type 的有效輸入如下:COLUMN、CONSTRAINT、EVENT NOTIFICATION、INDEX、PARAMETER、TRIGGER 和 NULL。
- { default | 'level2_object_name' |NULL }
-
這是指定之層級 2 物件類型的名稱。level2_object_name 是 sysname,預設值是 NULL。有效的輸入是預設值、NULL 或物件名稱。
列出物件擴充屬性的權限會隨著物件類型而不同。如需權限的完整清單,請參閱<使用資料庫物件的擴充屬性>。
A. 顯示資料庫的擴充屬性
下列範例會顯示資料庫物件本身所設定的所有擴充屬性。
USE AdventureWorks; GO SELECT objtype, objname, name, value FROM fn_listextendedproperty(default, default, default, default, default, default, default); GO
以下為結果集:
objtype objname name value --------- --------- ----------- ---------------------------- NULL NULL MS_Description AdventureWorks Sample OLTP Database (1 row(s) affected)
B. 顯示資料表中所有資料行的擴充屬性
下列範例列出 ScrapReason 資料表中之資料行的擴充屬性。這包含在 Production 結構描述中。
USE AdventureWorks; GO SELECT objtype, objname, name, value FROM fn_listextendedproperty (NULL, 'schema', 'Production', 'table', 'ScrapReason', 'column', default); GO
以下為結果集:
objtype objname name value ------- ----------- ------------- ------------------------ COLUMN ScrapReasonID MS_Description Primary key for ScrapReason records. COLUMN Name MS_Description Failure description. COLUMN ModifiedDate MS_Description Date the record was last updated. (3 row(s) affected)
C. 顯示結構描述中所有資料表的擴充屬性
下列範例列出 Sales 結構描述中之所有資料表的擴充屬性。
USE AdventureWorks; GO SELECT objtype, objname, name, value FROM fn_listextendedproperty (NULL, 'schema', 'Sales', 'table', default, NULL, NULL); GO

