TYPEPROPERTY (Transact-SQL)

適用於: SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體Azure Synapse AnalyticsAnalytics Platform System (PDW)

傳回資料類型的相關資訊。

Transact-SQL 語法慣例

Syntax

TYPEPROPERTY (type , property)  

注意

若要檢視 SQL Server 2014 (12.x) 和舊版的 Transact-SQL 語法,請參閱 舊版檔

引數

type
這是資料類型的名稱。

property
這是要針對資料類型傳回的資訊類型。 property 可以是下列值之一。

屬性 描述 傳回的值
AllowsNull 允許 Null 值的資料類型。 1 = True

0 = False

NULL = 找不到資料類型。
OwnerId 類型的擁有者。

注意:結構描述擁有者不一定是類型擁有者。
非 Null = 類型擁有者的資料庫使用者識別碼。

NULL = 不支援的類型,或類型識別碼無效。
有效位數 資料類型的有效位數。 位數或字元數。

-1 = xml 或大型數值資料類型

NULL = 找不到資料類型。
縮放比例 資料類型的小數位數。 資料類型的小數位數數目。

NULL = 資料類型不是 numeric,或找不到。
UsesAnsiTrim 當建立資料類型時,ANSI 填補設定是 ON。 1 = True

0 = False

NULL = 找不到資料類型,或它不是二進位或字串資料類型。

傳回型別

int

例外狀況

當發生錯誤,或呼叫端沒有檢視物件的權限時,便會傳回 NULL。

在 SQL Server 中,使用者只能檢視安全性實體的中繼資料,但前提是使用者必須是擁有者,或被授與其權限。 這表示發出中繼資料的內建函數 (例如,TYPEPROPERTY) 會在使用者不具有該物件任何權限時傳回 NULL。 如需相關資訊,請參閱 Metadata Visibility Configuration

範例

A. 識別資料類型的擁有者

下列範例會傳回資料類型的擁有者。

SELECT TYPEPROPERTY(SCHEMA_NAME(schema_id) + '.' + name, 'OwnerId') AS owner_id, name, system_type_id, user_type_id, schema_id  
FROM sys.types;  

B. 傳回 tinyint 資料類型的有效位數

下列範例會傳回 tinyint 資料類型的有效位數或位數數目。

SELECT TYPEPROPERTY( 'tinyint', 'PRECISION');  

另請參閱

TYPE_ID (Transact-SQL)
TYPE_NAME (Transact-SQL)
COLUMNPROPERTY (Transact-SQL)
中繼資料函數 (Transact-SQL)
OBJECTPROPERTY (Transact-SQL)
ALTER AUTHORIZATION (Transact-SQL)
sys.types (Transact-SQL)