TYPE_NAME (Transact-SQL)
傳回指定類型識別碼的非限定類型名稱。
語法
TYPE_NAME ( type_id )
引數
- type_id
這是將使用的類型識別碼。 type_id 是 int,它可以參考呼叫者有權存取之任何結構描述中的類型。
傳回類型
sysname
例外狀況
當發生錯誤,或呼叫者沒有檢視物件的權限時,便會傳回 NULL。
在 SQL Server 中,使用者只能檢視使用者擁有或被授與某些權限之安全性實體的中繼資料。 這表示發出中繼資料的內建函數 (例如,TYPE_NAME) 會在使用者不具有該物件任何權限時傳回 NULL。 如需詳細資訊,請參閱<中繼資料可見性組態>。
備註
當 type_id 無效或呼叫者沒有足以參考這個類型的權限時,TYPE_NAME 會傳回 NULL。
TYPE_NAME 適用於系統資料類型,也適用於使用者自訂資料類型。 類型可以包含在任何結構描述中,但一律會傳回非限定類型名稱。 這表示名稱沒有 schema**.** 前置詞。
系統函數可以用於選取清單、WHERE 子句以及任何可以使用運算式的位置。 如需詳細資訊,請參閱<運算式 (Transact-SQL)>和<WHERE (Transact-SQL)>。
範例
下列範例會針對 AdventureWorks2012 資料庫之 Vendor 資料表中的每個資料行,傳回物件名稱、資料行名稱和類型名稱。
USE AdventureWorks2012;
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 BusinessEntityID int
Vendor CreditRating tinyint
Vendor ModifiedDate datetime
Vendor Name Name
Vendor PreferredVendorStatus Flag
Vendor PurchasingWebServiceURL nvarchar
(8 row(s) affected)