COLUMNS (Transact-SQL)
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric 的 SQL 端點分析 Microsoft Fabric 的倉儲
針對目前資料庫中目前用戶可存取的每個數據行,各傳回一個數據列。
若要從這些檢視擷取資訊,請指定INFORMATION_SCHEMA的完整名稱.view_name。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
TABLE_CATALOG | nvarchar(128) | 數據表限定符。 |
TABLE_SCHEMA | nvarchar(128) | 包含數據表的架構名稱。 重要: 請勿使用INFORMATION_SCHEMA檢視來判斷對象的架構。 INFORMATION_SCHEMA檢視只代表 物件的元數據子集。 尋找物件架構的唯一可靠方法是查詢 sys.objects 目錄檢視。 |
TABLE_NAME | nvarchar(128) | 資料表名稱。 |
COLUMN_NAME | nvarchar(128) | 資料行名稱。 |
ORDINAL_POSITION | int | 資料行識別碼。 |
COLUMN_DEFAULT | nvarchar(4000) | 數據行的預設值。 |
IS_NULLABLE | varchar(3) | 資料行的 Null 屬性。 如果此數據行允許 NULL,則此資料行會傳回 YES。 否則,它就會傳回 NO。 |
DATA_TYPE | nvarchar(128) | 系統提供的資料類型。 |
CHARACTER_MAXIMUM_LENGTH | int | 二進位資料、字元資料,或文字和影像資料的最大長度 (以字元為單位)。 -1 適用於 xml 和大型實值型別數據。 否則,就傳回 NULL。 如需詳細資訊,請參閱 資料類型 (Transact-SQL)。 |
CHARACTER_OCTET_LENGTH | int | 二進位資料、字元資料,或文字和影像資料的最大長度 (以位元組為單位)。 -1 適用於 xml 和大型實值型別數據。 否則,就傳回 NULL。 |
NUMERIC_PRECISION | tinyint | 近似數值資料、精確數值資料、整數資料或貨幣資料的有效位數。 否則,就傳回 NULL。 |
NUMERIC_PRECISION_RADIX | smallint | 近似數值資料、精確數值資料、整數資料或貨幣資料的有效位數基數。 否則,就傳回 NULL。 |
NUMERIC_SCALE | int | 近似數值資料、精確數值資料、整數資料或貨幣資料的小數位數。 否則,就傳回 NULL。 |
DATETIME_PRECISION | smallint | datetime 和 ISO interval 數據類型的子類型代碼。 如果是其他資料類型,就傳回 NULL。 |
CHARACTER_SET_CATALOG | nvarchar(128) | 傳 回主圖形。 如果數據行是字元數據或 文字 數據類型,則表示字元集所在的資料庫。 否則,就傳回 NULL。 |
CHARACTER_SET_SCHEMA | nvarchar(128) | 一律傳回 NULL。 |
CHARACTER_SET_NAME | nvarchar(128) | 如果此數據行是字元數據或 文字 數據類型,則傳回字元集的唯一名稱。 否則,就傳回 NULL。 |
COLLATION_CATALOG | nvarchar(128) | 一律傳回 NULL。 |
COLLATION_SCHEMA | nvarchar(128) | 一律傳回 NULL。 |
COLLATION_NAME | nvarchar(128) | 如果數據行是字元數據或 文字 數據類型,則傳回定序的唯一名稱。 否則,就傳回 NULL。 |
DOMAIN_CATALOG | nvarchar(128) | 如果數據行是別名數據類型,則此數據行是建立使用者定義數據類型的資料庫名稱。 否則,就傳回 NULL。 |
DOMAIN_SCHEMA | nvarchar(128) | 如果數據行是使用者定義的數據類型,這個數據行會傳回使用者定義數據類型的架構名稱。 否則,就傳回 NULL。 重要: 請勿使用INFORMATION_SCHEMA檢視來判斷數據類型的架構。 尋找類型架構的唯一可靠方式是使用 TYPEPROPERTY 函式。 |
DOMAIN_NAME | nvarchar(128) | 如果數據行是使用者定義的數據類型,則此數據行是使用者定義數據類型的名稱。 否則,就傳回 NULL。 |
備註
INFORMATION_SCHEMA的 ORDINAL_POSITION 數據行。COLUMNS 檢視與 COLUMNS_UPDATED 函式所傳回之數據行的位模式不相容。 若要取得與 COLUMNS_UPDATED 相容的位模式,您必須在查詢INFORMATION_SCHEMA時參考 COLUMNPROPERTY 系統函式的 ColumnID 屬性。COLUMNS 檢視。 例如:
USE AdventureWorks2022;
GO
SELECT TABLE_NAME, COLUMN_NAME, COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA + '.' + TABLE_NAME), COLUMN_NAME, 'ColumnID') AS COLUMN_ID
FROM AdventureWorks2022.INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Person';
GO