TYPE_NAME (Transact-SQL)
更新:
2006 年 7 月 17 日
傳回指定類型識別碼的非限定類型名稱。
當發生錯誤,或呼叫者沒有檢視物件的權限時,便會傳回 NULL。
在 SQL Server 2005 中,使用者只能檢視使用者擁有或被授與某些權限之安全性實體的中繼資料。這表示發出中繼資料的內建函數 (例如,TYPE_NAME) 會在使用者不具有該物件任何權限時傳回 NULL。如需詳細資訊,請參閱<中繼資料可見性組態>和<中繼資料可見性疑難排解>。
當 type_id 無效或呼叫者沒有足以參考這個類型的權限時,TYPE_NAME 會傳回 NULL。
TYPE_NAME 適用於系統資料類型,也適用於使用者自訂資料類型。類型可以包含在任何結構描述中,但一律會傳回非限定類型名稱。這表示名稱沒有 schema. 前置詞。
系統函數可以用於選取清單、WHERE 子句以及任何可以使用運算式的位置。如需詳細資訊,請參閱<運算式 (Transact-SQL)>和<WHERE (Transact-SQL)>。
下列範例會針對 AdventureWorks 資料庫之 Vendor 資料表中的每個資料行,傳回物件名稱、資料行名稱和類型名稱。
USE AdventureWorks; GO SELECT o.name AS obj_name, c.name AS col_name, TYPE_NAME(c.user_type_id) AS type_name FROM sys.objects AS o JOIN sys.columns AS c ON o.object_id = c.object_id WHERE o.name = 'Vendor' ORDER BY col_name; GO
以下為結果集:
obj_name col_name type_name --------- ----------------------- ------------------- Vendor AccountNumber AccountNumber Vendor ActiveFlag Flag Vendor CreditRating tinyint Vendor ModifiedDate datetime Vendor Name Name Vendor PreferredVendorStatus Flag Vendor PurchasingWebServiceURL nvarchar Vendor VendorID int (8 row(s) affected)

