sys.system_columns (Transact-SQL)
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric 的 SQL 端點分析 Microsoft Fabric 的倉儲
針對具有數據行之系統物件的每個數據行,各包含一個數據列。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
object_id | int | 這個數據行所屬之對象的標識碼。 |
name | sysname | 資料行的名稱。 在物件中是唯一的。 |
column_id | int | 數據行的識別碼。 在物件中是唯一的。 數據行標識碼可能不是循序的。 |
system_type_id | tinyint | 數據行的系統類型識別碼 |
user_type_id | int | 使用者所定義之數據行類型的識別碼。 若要傳回類型的名稱,請聯結至 此數據行上的 sys.types 目錄檢視。 |
max_length | smallint | 數據行的最大長度(以位元組為單位)。 -1 = 數據行數據類型為 varchar(max)、 nvarchar(max)、 varbinary(max)或 xml。 對於文字數據行,max_length值會是 16,或是sp_tableoption 'text in row' 所設定的值。 |
有效位數 | tinyint | 如果以數值為基礎,則為數據行的有效位數;否則為 0。 |
scale | tinyint | 如果以數值為基礎,則為數據行的尺規;否則為 0。 |
collation_name | sysname | 如果以字元為基礎,則為數據行定序的名稱;否則為 NULL。 |
is_nullable | bit | 1 = 資料行可為 Null。 |
is_ansi_padded | bit | 1 = 如果字元、二進位或變體,Column 會使用 ANSI_PADDING ON 行為。 0 = 資料行不是字元、二進位或變體。 |
is_rowguidcol | bit | 1 = Column 是宣告的 ROWGUIDCOL。 |
is_identity | bit | 1 = 資料行具有識別值。 |
is_computed | bit | 1 = 資料列是計算資料行。 |
is_filestream | bit | 1 = 資料行宣告為使用 filestream 記憶體。 |
is_replicated | bit | 1 = 資料行已復寫。 |
is_non_sql_subscribed | bit | 1 = 數據行具有非 SQL Server 訂閱者。 |
is_merge_published | bit | 1 = 資料行已合併發行。 |
is_dts_replicated | bit | 1 = 使用 SSIS 複寫數據行。 |
is_xml_document | bit | 1 = 內容是完整的 XML 檔。 0 = 內容是檔片段,或數據行數據類型不是 xml。 |
xml_collection_id | int | 如果數據行數據類型為 xml,且 XML 的類型為 , 則為非零。 值將是集合的標識碼,其中包含數據行的驗證 XML 架構命名空間。 0 = 沒有 XML 架構集合。 |
default_object_id | int | 不論它是獨立 sys.sp_bindefault還是內嵌數據行層級 DEFAULT 條件約束,默認對象的標識碼。 內 嵌數據行層級預設物件的parent_object_id 數據行是數據表本身的參考。 或者,如果沒有預設值,則為 0。 |
rule_object_id | int | 使用 sys.sp_bindrule系結至數據行的獨立規則標識碼。 0 = 沒有獨立規則。 如需資料行層級 CHECK 條件約束,請參閱 sys.check_constraints (Transact-SQL) 。 |
is_sparse | bit | 1 = 資料行是疏鬆數據行。 如需詳細資訊,請參閱 使用疏鬆資料行。 |
is_column_set | bit | 1 = 資料行是資料行集。 如需詳細資訊,請參閱 使用資料行集。 |
generated_always_type | tinyint | 適用於:SQL Server 2016 (13.x) 和更新版本,以及 SQL Database。 7、8、9、10 僅適用於 SQL 資料庫。 識別何時產生資料行值(系統數據表中的數據行一律為 0): 0 = NOT_APPLICABLE 1 = AS_ROW_START 2 = AS_ROW_END 7 = AS_TRANSACTION_ID_START 8 = AS_TRANSACTION_ID_END 9 = AS_SEQUENCE_NUMBER_START 10 = AS_SEQUENCE_NUMBER_END 如需詳細資訊,請參閱時態表(關係資料庫)。 |
generated_always_type_desc | nvarchar(60) | 適用於:SQL Server 2016 (13.x) 和更新版本,以及 SQL Database。 值文字描述 generated_always_type (系統資料表中的數據行一律NOT_APPLICABLE) NOT_APPLICABLE AS_ROW_START AS_ROW_END 適用於:從 SQL Server 2022 (16.x) 開始,SQL 資料庫 AS_TRANSACTION_ID_START AS_TRANSACTION_ID_END AS_SEQUENCE_NUMBER_START AS_SEQUENCE_NUMBER_END |
ledger_view_column_type | tinyint | 適用於:從 SQL Server 2022 (16.x) 開始,SQL 資料庫。 如果不是 NULL,表示總賬檢視中的數據行類型: 1 = TRANSACTION_ID 2 = SEQUENCE_NUMBER 3 = OPERATION_TYPE 4 = OPERATION_TYPE_DESC 如需資料庫總賬的詳細資訊,請參閱 總賬。 |
ledger_view_column_type_desc | nvarchar(60) | 適用於:從 SQL Server 2022 (16.x) 開始,SQL 資料庫。 如果不是 NULL,則包含總賬檢視中資料行類型的文字描述: TRANSACTION_ID SEQUENCE_NUMBER OPERATION_TYPE OPERATION_TYPE_DESC |
權限
目錄檢視內中繼資料的可見性會限制在使用者所擁有的安全性實體,或已授與使用者某些權限的安全性實體。 如需相關資訊,請參閱 Metadata Visibility Configuration。
另請參閱
物件目錄檢視 (Transact-SQL)
目錄檢視 (Transact-SQL)
查詢 SQL Server 系統目錄常見問題
sys.columns (Transact-SQL)
sys.all_columns (Transact-SQL)
sys.computed_columns (Transact-SQL)