sys.columns (Transact-SQL)sys.columns (Transact-SQL)

Gilt für: JaSQL Server JaAzure SQL-Datenbank JaAzure Synapse Analytics (SQL DW) JaParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database yesAzure Synapse Analytics (SQL DW) yesParallel Data Warehouse

Gibt eine Zeile für jede Spalte eines Objekts zurück, das Spalten besitzt, z. B. Sichten oder Tabellen.Returns a row for each column of an object that has columns, such as views or tables. Im Folgenden finden Sie eine Liste der Objekttypen mit Spalten:The following is a list of object types that have columns:

  • Assembly-Tabellenwertfunktionen (FT)Table-valued assembly functions (FT)

  • Inline-SQL-Tabellenwertfunktionen (IF)Inline table-valued SQL functions (IF)

  • Interne Tabellen (IT)Internal tables (IT)

  • Systemtabellen (S)System tables (S)

  • SQL-Tabellenwertfunktionen (TF)Table-valued SQL functions (TF)

  • Benutzertabellen (U)User tables (U)

  • Sichten (V)Views (V)

SpaltennameColumn name DatentypData type BESCHREIBUNGDescription
object_idobject_id intint Die ID des Objekts, zu dem diese Spalte gehört.ID of the object to which this column belongs.
namename sysnamesysname Name der Spalte.Name of the column. Ist eindeutig innerhalb des Objekts.Is unique within the object.
column_idcolumn_id intint ID der Spalte.ID of the column. Ist eindeutig innerhalb des Objekts.Is unique within the object.

Spalten-IDs sind möglicherweise nicht sequenziell.Column IDs might not be sequential.
system_type_idsystem_type_id tinyinttinyint ID des System Typs der Spalte.ID of the system type of the column.
user_type_iduser_type_id intint Die ID des vom Benutzer definierten Typs der Spalte.ID of the type of the column as defined by the user.

Stellen Sie einen Join mit der sys.types -Katalogsicht für diese Spalte her, um den Namen des Typs zurückzugeben.To return the name of the type, join to the sys.types catalog view on this column.
max_lengthmax_length smallintsmallint Maximale Länge (in Byte) für die Spalte.Maximum length (in bytes) of the column.

-1 = der Spaltendatentyp ist varchar (max), nvarchar (max), varbinary (max) oder XML.-1 = Column data type is varchar(max), nvarchar(max), varbinary(max), or xml.

Bei Text Spalten ist der max_length Wert 16 oder der Wert, der durch sp_tableoption ' Text in row ' festgelegt wird.For text columns, the max_length value will be 16 or the value set by sp_tableoption 'text in row'.
Genauigkeitprecision tinyinttinyint Die Genauigkeit der Spalte, wenn sie auf numerischen Werten basiert; andernfalls 0.Precision of the column if numeric-based; otherwise, 0.
Skalierungscale tinyinttinyint Die Skalierung der Spalte, wenn sie auf numerischen Werten basiert; andernfalls 0.Scale of column if numeric-based; otherwise, 0.
collation_namecollation_name sysnamesysname Name der Sortierung der Spalte, wenn diese zeichenbasiert ist, andernfalls NULL.Name of the collation of the column if character-based; otherwise, NULL.
is_nullableis_nullable bitbit 1 = Spalte lässt NULL-Werte zu.1 = Column is nullable.
is_ansi_paddedis_ansi_padded bitbit 1 = Spalte verwendet ANSI_PADDING ON-Verhalten, wenn es sich um Zeichen- oder Binärdaten bzw. Daten vom Typ Variant handelt.1 = Column uses ANSI_PADDING ON behavior if character, binary, or variant.

0 = Bei der Spalte handelt es sich um Zeichen- oder Binärdaten bzw. Daten vom Typ Variant.0 = Column is not character, binary, or variant.
is_rowguidcolis_rowguidcol bitbit 1 = Spalte ist eine deklarierte ROWGUIDCOL.1 = Column is a declared ROWGUIDCOL.
is_identityis_identity bitbit 1 = Die Spalte verfügt über Identitätswerte.1 = Column has identity values
is_computedis_computed bitbit 1 = Spalte ist eine berechnete Spalte.1 = Column is a computed column.
is_filestreamis_filestream bitbit 1 = Spalte ist eine FILESTREAM-Spalte.1 = Column is a FILESTREAM column.
is_replicatedis_replicated bitbit 1 = Spalte wird repliziert.1 = Column is replicated.
is_non_sql_subscribedis_non_sql_subscribed bitbit 1 = Die Spalte hat einen Nicht-SQL Server-Abonnenten.1 = Column has a non-SQL Server subscriber.
is_merge_publishedis_merge_published bitbit 1 = Spalte verwendet die Mergeveröffentlichung.1 = Column is merge-published.
is_dts_replicatedis_dts_replicated bitbit 1 = Die Spalte wird mithilfe von SSISSSIS repliziert.1 = Column is replicated by using SSISSSIS.
is_xml_documentis_xml_document bitbit 1 = Der Inhalt ist ein vollständiges XML-Dokument.1 = Content is a complete XML document.

0 = der Inhalt ist ein Dokument Fragment, oder der Spaltendatentyp ist nicht XML.0 = Content is a document fragment or the column data type is not xml.
xml_collection_idxml_collection_id intint Ungleich 0 (null), wenn der Datentyp der Spalte XML ist und die XML-Daten eingegeben werden.Nonzero if the data type of the column is xml and the XML is typed. Der Wert entspricht der ID der Auflistung, die den prüfenden XML-Schemanamespace der Spalte enthält.The value will be the ID of the collection containing the validating XML schema namespace of the column.

0 = Keine XML-Schemaauflistung0 = No XML schema collection.
default_object_iddefault_object_id intint ID des Standard Objekts, unabhängig davon, ob es sich um ein eigenständiges Objekt ( sys. sp_bindefault) oder eine Inline-Standard Einschränkung auf Spaltenebene handelt.ID of the default object, regardless of whether it is a stand-alone object sys.sp_bindefault, or an inline, column-level DEFAULT constraint. Die parent_object_id-Spalte eines DEFAULT-Inlineobjekts ist ein Verweis auf die Tabelle selbst.The parent_object_id column of an inline column-level default object is a reference back to the table itself.

0 = Kein Standard.0 = No default.
rule_object_idrule_object_id intint ID der eigenständigen Regel, die mithilfe von sys.sp_bindrule gebunden wird.ID of the stand-alone rule bound to the column by using sys.sp_bindrule.

0 = Keine eigenständige Regel.0 = No stand-alone rule. Informationen zu Check-Einschränkungen auf Spaltenebene finden Sie unter sys. check_constraints (Transact-SQL-).For column-level CHECK constraints, see sys.check_constraints (Transact-SQL).
is_sparseis_sparse bitbit 1 = Spalte ist eine Sparsespalte.1 = Column is a sparse column. Weitere Informationen finden Sie unter Verwenden von Spalten mit geringer Dichte.For more information, see Use Sparse Columns.
is_column_setis_column_set bitbit 1 = Spalte ist ein Spaltensatz.1 = Column is a column set. Weitere Informationen finden Sie unter Verwenden von Spalten mit geringer Dichte.For more information, see Use Sparse Columns.
generated_always_typegenerated_always_type tinyinttinyint Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher SQL-DatenbankSQL Database.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later, SQL-DatenbankSQL Database.

Gibt an, wann der Spaltenwert generiert wird (für Spalten in Systemtabellen immer 0):Identifies when the column value is generated (will always be 0 for columns in system tables):

0 = NOT_APPLICABLE0 = NOT_APPLICABLE

1 = AS_ROW_START1 = AS_ROW_START

2 = AS_ROW_END2 = AS_ROW_END

Weitere Informationen finden Sie unter Temporale Tabellen (relationale Datenbanken).For more information, see Temporal Tables (Relational databases).
generated_always_type_descgenerated_always_type_desc nvarchar (60)nvarchar(60) Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher SQL-DatenbankSQL Database.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later, SQL-DatenbankSQL Database.

Textbeschreibung des generated_always_typeWerts (für Spalten in Systemtabellen immer NOT_APPLICABLE)Textual description of generated_always_type's value (always NOT_APPLICABLE for columns in system tables)

NOT_APPLICABLENOT_APPLICABLE

AS_ROW_STARTAS_ROW_START

AS_ROW_ENDAS_ROW_END
encryption_typeencryption_type intint Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher SQL-DatenbankSQL Database.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later, SQL-DatenbankSQL Database.

Verschlüsselungstyp:Encryption type:

1 = deterministische Verschlüsselung1 = Deterministic encryption

2 = zufällige Verschlüsselung2 = Randomized encryption
encryption_type_descencryption_type_desc nvarchar (64)nvarchar(64) Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher SQL-DatenbankSQL Database.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later, SQL-DatenbankSQL Database.

Beschreibung des Verschlüsselungs Typs:Encryption type description:

ZufälligeRANDOMIZED

DETERMINISTICDETERMINISTIC
encryption_algorithm_nameencryption_algorithm_name sysnamesysname Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher SQL-DatenbankSQL Database.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later, SQL-DatenbankSQL Database.

Der Name des Verschlüsselungsalgorithmus.Name of encryption algorithm.

Nur AEAD_AES_256_CBC_HMAC_SHA_512 wird unterstützt.Only AEAD_AES_256_CBC_HMAC_SHA_512 is supported.
column_encryption_key_idcolumn_encryption_key_id intint Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher SQL-DatenbankSQL Database.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later, SQL-DatenbankSQL Database.

ID des Cek.ID of the CEK.
column_encryption_key_database_namecolumn_encryption_key_database_name sysnamesysname Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher SQL-DatenbankSQL Database.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later, SQL-DatenbankSQL Database.

Der Name der Datenbank, in der der Spalten Verschlüsselungsschlüssel vorhanden ist, wenn er sich von der Datenbank der Spalte unterscheidet.The name of the database where the column encryption key exists if different than the database of the column. NULL, wenn der Schlüssel in der Datenbank vorhanden ist, in der sich die Spalte befindet.NULL if the key exists in the same database as the column.
is_hiddenis_hidden bitbit Gilt für: SQL Server 2019 (15.x)SQL Server 2019 (15.x) und höher SQL-DatenbankSQL Database.Applies to: SQL Server 2019 (15.x)SQL Server 2019 (15.x) and later, SQL-DatenbankSQL Database.

Gibt an, ob die Spalte ausgeblendet ist:Indicates if the column is hidden:

0 = reguläre, nicht verborgene, sichtbare Spalte0 = regular, not-hidden, visible column

1 = verborgene Spalte1 = hidden column
is_maskedis_masked bitbit Gilt für: SQL Server 2019 (15.x)SQL Server 2019 (15.x) und höher SQL-DatenbankSQL Database.Applies to: SQL Server 2019 (15.x)SQL Server 2019 (15.x) and later, SQL-DatenbankSQL Database.

Gibt an, ob die Spalte durch eine dynamische Daten Maskierung maskiert wird:Indicates if the column is masked by a dynamic data masking:

0 = reguläre, nicht maskierte Spalte0 = regular, not-masked column

1 = Spalte ist maskiert1 = column is masked

BerechtigungenPermissions

Die Sichtbarkeit der Metadaten in Katalogsichten ist auf sicherungsfähige Elemente eingeschränkt, bei denen der Benutzer entweder der Besitzer ist oder für die dem Benutzer eine Berechtigung erteilt wurde.The visibility of the metadata in catalog views is limited to securables that a user either owns or on which the user has been granted some permission. Weitere Informationen finden Sie unter Metadata Visibility Configuration.For more information, see Metadata Visibility Configuration.

Weitere InformationenSee Also

System Sichten (Transact-SQL-) System Views (Transact-SQL)
Objektkatalog Sichten (Transact-SQL-) Object Catalog Views (Transact-SQL)
Katalogsichten (Transact-SQL) Catalog Views (Transact-SQL)
Abfragen der SQL Server System Katalog-FAQ Querying the SQL Server System Catalog FAQ
sys. ALL_COLUMNS (Transact-SQL-) sys.all_columns (Transact-SQL)
sys. system_columns (Transact-SQL-)sys.system_columns (Transact-SQL)