共用方式為


COLUMNS (Transact-SQL)

更新: 2006 年 7 月 17 日

針對目前資料庫中目前使用者所能存取的每個資料行,各傳回一個資料列。

若要從這些檢視中擷取資訊,請指定 INFORMATION_SCHEMA*.view_name* 的完整名稱。

資料行名稱

資料類型

描述

TABLE_CATALOG

nvarchar(128)

資料表限定詞。

TABLE_SCHEMA

nvarchar(128)

包含資料表的結構描述名稱。

TABLE_NAME

nvarchar(128)

資料表名稱。

COLUMN_NAME

nvarchar(128)

資料行名稱。

ORDINAL_POSITION

int

資料行識別碼。

ms188348.note(zh-tw,SQL.90).gif附註:

在 SQL Server 2005 中,資料行識別碼是連續號碼。

COLUMN_DEFAULT

nvarchar(4000)

資料行的預設值。

SQL Server 2005 在目錄中繼資料內解碼及儲存 SQL 運算式的方式異於 SQL Server 2000。已解碼運算式的語意相當於原始文字,但是不能保證語法相同。例如,空白字元會從已解碼的運算式移除。如需詳細資訊,請參閱<SQL Server 2005 中對於 Database Engine 功能的行為變更>。

IS_NULLABLE

varchar(3)

資料行的 Null 屬性。如果這個資料行允許 NULL,這個資料行就會傳回 YES。否則,會傳回 NO。

DATA_TYPE

nvarchar(128)

系統提供的資料類型。

CHARACTER_MAXIMUM_LENGTH

int

二進位資料、字元資料,或文字和影像資料的最大長度 (以字元為單位)。

如果是 xml 及大數值類型資料,便傳回 -1。否則,就傳回 NULL。如需詳細資訊,請參閱<資料類型 (Transact-SQL)>。

CHARACTER_OCTET_LENGTH

int

二進位資料、字元資料,或文字和影像資料的最大長度 (以位元組為單位)。

如果是 xml 及大數值類型資料,便傳回 -1。否則,就傳回 NULL。

NUMERIC_PRECISION

tinyint

近似數值資料、精確數值資料、整數資料或貨幣資料的有效位數。否則,就傳回 NULL。

NUMERIC_PRECISION_RADIX

smallint

近似數值資料、精確數值資料、整數資料或貨幣資料的有效位數基數。否則,就傳回 NULL。

NUMERIC_SCALE

int

近似數值資料、精確數值資料、整數資料或貨幣資料的小數位數。否則,就傳回 NULL。

DATETIME_PRECISION

smallint

datetime 和 SQL-92 interval 資料類型的子類型代碼。如果是其他資料類型,就傳回 NULL。

CHARACTER_SET_CATALOG

nvarchar(128)

傳回 master。如果資料行是字元資料或 text 資料類型,便指出字元集所在的資料庫。否則,就傳回 NULL。

CHARACTER_SET_SCHEMA

nvarchar(128)

一律傳回 NULL。

CHARACTER_SET_NAME

nvarchar(128)

如果這個資料行是字元資料或 text 資料類型,則傳回字元集的唯一名稱。否則,就傳回 NULL。

COLLATION_CATALOG

nvarchar(128)

一律傳回 NULL。

COLLATION_SCHEMA

nvarchar(128)

一律傳回 NULL。

COLLATION_NAME

nvarchar(128)

如果資料行是字元資料或 text 資料類型,則傳回定序的唯一名稱。否則,就傳回 NULL。

DOMAIN_CATALOG

nvarchar(128)

如果資料行是別名資料類型,這個資料行就是建立使用者自訂資料類型的資料庫名稱。否則,就傳回 NULL。

DOMAIN_SCHEMA

nvarchar(128)

如果資料行是一個使用者自訂資料類型,這個資料行會傳回使用者自訂資料類型的結構描述名稱。否則,就傳回 NULL。

DOMAIN_NAME

nvarchar(128)

如果資料行是一個使用者自訂資料類型,這個資料行就是使用者自訂資料類型的名稱。否則,就傳回 NULL。

備註

在 SQL Server 2005 中,INFORMATION_SCHEMA.COLUMNS 檢視的 ORDINAL_POSITION 資料行與 COLUMNS_UPDATED 函數所傳回之資料行的位元模式不相容。若要取得相容於 COLUMNS_UPDATED 的位元模式,在您查詢 INFORMATION_SCHEMA.COLUMNS 檢視時,您必須參考 COLUMNPROPERTY 系統函數的 ColumnID 屬性。例如:

USE AdventureWorks;
GO
SELECT TABLE_NAME, COLUMN_NAME, COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA + '.' + TABLE_NAME), COLUMN_NAME, 'ColumnID') AS COLUMN_ID
FROM AdventureWorks.INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Contact';
GO

請參閱

參考

系統檢視 (Transact-SQL)
資訊結構描述檢視 (Transact-SQL)
sys.syscharsets (Transact-SQL)
sys.columns (Transact-SQL)
sys.sql_modules (Transact-SQL)
sys.configurations (Transact-SQL)
sys.objects (Transact-SQL)
sys.types (Transact-SQL)
COLUMNS_UPDATED (Transact-SQL)

其他資源

查詢 SQL Server 系統目錄

說明及資訊

取得 SQL Server 2005 協助

變更歷程記錄

版本 歷程記錄

2006 年 7 月 17 日

新增內容:
  • COLUMN_DEFAULT 資料行中,加入有關如何將 SQL 運算式儲存在 SQL Server 2005 中的內容。