COLUMNPROPERTY (Transact-SQL)COLUMNPROPERTY (Transact-SQL)

Anwendungsbereich:Applies to: JaSQL ServerSQL Server (alle unterstützten Versionen) yesSQL ServerSQL Server (all supported versions) JaAzure SQL-DatenbankAzure SQL DatabaseYesAzure SQL-DatenbankAzure SQL DatabaseAnwendungsbereich:Applies to: JaSQL ServerSQL Server (alle unterstützten Versionen) yesSQL ServerSQL Server (all supported versions) JaAzure SQL-DatenbankAzure SQL DatabaseYesAzure SQL-DatenbankAzure SQL Database

Diese Funktion gibt Informationen zu Spalten oder Parametern zurück.This function returns column or parameter information.

Symbol für Themenlink Transact-SQL-SyntaxkonventionenTopic link icon Transact-SQL Syntax Conventions

SyntaxSyntax

COLUMNPROPERTY ( id , column , property )   

Hinweis

Informationen zum Anzeigen der Transact-SQL-Syntax für SQL Server 2014 oder früher finden Sie unter Dokumentation zu früheren Versionen.To view Transact-SQL syntax for SQL Server 2014 and earlier, see Previous versions documentation.

ArgumenteArguments

idid
Ein Ausdruck, der den Bezeichner (ID) der Tabelle oder Prozedur enthält.An expression containing the identifier (ID) of the table or procedure.

columncolumn
Ein Ausdruck, der den Namen der Spalte oder des Parameters enthält.An expression containing the name of the column or parameter.

propertyproperty
Das property-Argument gibt für das id-Argument den Informationstyp an, den die COLUMNPROPERTY-Funktion zurückgibt.For the id argument, the property argument specifies the information type that the COLUMNPROPERTY function will return. Für das property-Argument sind die folgenden Werte möglich:The property argument can have any one of these values:

WertValue BESCHREIBUNGDescription Zurückgegebener WertValue returned
AllowsNullAllowsNull Lässt NULL-Werte zu.Allows null values. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
ColumnIdColumnId Der Wert der Spalten-ID, der sys.columns.column_id entspricht.Column ID value corresponding to sys.columns.column_id. Column IDColumn ID

Hinweis: Wenn mehrere Spalten abgefragt werden, können Lücken in der Abfolge von Werten für Spalten-IDs auftreten.Note: When querying multiple columns, gaps may appear in the sequence of Column ID values.
FullTextTypeColumnFullTextTypeColumn Der TYPE COLUMN-Wert in der Tabelle, die die Dokumenttypinformationen der Spalte enthält.The TYPE COLUMN in the table holding the document type information of the column. Die ID der Volltexttypspalte TYPE COLUMN für den Ausdruck des Spaltennamens, der als zweiter Parameter dieser Funktion übergeben wurde.ID of the full-text TYPE COLUMN for the column name expression passed as the second parameter of this function.
GeneratedAlwaysTypeGeneratedAlwaysType Wird durch den Spaltenwert systemgeneriert.Is column value system-generated. Entspricht sys.columns.generated_always_typeCorresponds to sys.columns.generated_always_type Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later.

0 = Nicht immer generiert0: Not generated always

1 = Immer am Zeilenanfang generiert1: Generated always at row start

2 = Immer am Zeilenende generiert2: Generated always at row end
IsColumnSetIsColumnSet Spalte ist ein Spaltensatz.Column is a column set. Weitere Informationen finden Sie unter Verwenden von Spaltensätzen.For more information, see Use Column Sets. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
IsComputedIsComputed Die Spalte ist eine berechnete Spalte.Column is a computed column. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
IsCursorTypeIsCursorType Der Prozedurparameter ist vom Typ CURSOR.Procedure parameter is of type CURSOR. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
IsDeterministicIsDeterministic Die Spalte ist deterministisch.Column is deterministic. Diese Eigenschaft gilt nur für berechnete Spalten und Sichtspalten.This property applies only to computed columns and view columns. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input. Keine berechnete Spalte oder Sichtspalte.Not a computed column or view column.
IsFulltextIndexedIsFulltextIndexed Die Spalte wird für die Volltextindizierung registriert.Column is registered for full-text indexing. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
IsHiddenIsHidden Wird durch den Spaltenwert systemgeneriert.Is column value system-generated. Entspricht sys.columns.is_hiddenCorresponds to sys.columns.is_hidden Gilt für: SQL Server 2019 (15.x)SQL Server 2019 (15.x) und höher.Applies to: SQL Server 2019 (15.x)SQL Server 2019 (15.x) and later.

0 = Nicht ausgeblendet0: Not hidden

1 = Ausgeblendet1: Hidden
IsIdentityIsIdentity Die Spalte verwendet die IDENTITY-Eigenschaft.Column uses the IDENTITY property. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
IsIdNotForReplIsIdNotForRepl In der Spalte wird die IDENTITY_INSERT-Einstellung überprüft.Column checks for the IDENTITY_INSERT setting. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
IsIndexableIsIndexable Diese Spalte kann indiziert werden.Column can be indexed. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
isoutparamIsOutParam Der Prozedurparameter ist ein Ausgabeparameter.Procedure parameter is an output parameter. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
IsPreciseIsPrecise Diese Spalte ist eine genaue Spalte.Column is precise. Diese Eigenschaft wird nur auf deterministische Spalten angewendet.This property applies only to deterministic columns. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input. Keine deterministische SpalteNot a deterministic column
IsRowGuidColIsRowGuidCol Die Spalte weist den Datentyp uniqueidentifier auf und wird über die ROWGUIDCOL-Eigenschaft definiert.Column has the uniqueidentifier data type, and is defined with the ROWGUIDCOL property. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
IsSparseIsSparse Spalte ist eine Sparsespalte.Column is a sparse column. Weitere Informationen finden Sie unter Verwenden von Spalten mit geringer Dichte.For more information, see Use Sparse Columns. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
IsSystemVerifiedIsSystemVerified Die Eigenschaften für Determinismus und Genauigkeit der Spalte können von Datenbank-EngineDatabase Engine überprüft werden.The Datenbank-EngineDatabase Engine can verify the determinism and precision properties of the column. Diese Eigenschaft gilt nur für berechnete Spalten und Spalten von Sichten.This property applies only to computed columns and columns of views. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
IsXmlIndexableIsXmlIndexable Die XML-Spalte kann in einem XML-Index verwendet werden.The XML column can be used in an XML index. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
GenauigkeitPrecision Länge des Datentyps der Spalte oder des Parameters.Data type length of the column or parameter. Die Länge des angegebenen Spaltendatentyps.The length of the specified column data type

-1 = xml oder Typen für hohe Werte-1: xml or large value types

NULL = Ungültige EingabeNULL: invalid input.
SkalierungScale Dezimalstellen des Datentyps der Spalte oder des Parameters.Scale for the column or parameter data type. Wert der DezimalstellenThe scale value

NULL = Ungültige EingabeNULL: invalid input.
StatisticalSemanticsStatisticalSemantics Spalte ist für die semantische Indizierung aktiviert.Column is enabled for semantic indexing. 1: TRUE1: TRUE

0: FALSE0: FALSE
SystemDataAccessSystemDataAccess Die Spalte wird von einer Funktion abgeleitet, die auf Daten in den Systemkatalogen oder virtuellen Tabellen von SQL ServerSQL Server zugreift.Column is derived from a function that accesses data in the system catalogs or virtual system tables of SQL ServerSQL Server. Diese Eigenschaft gilt nur für berechnete Spalten und Spalten von Sichten.This property applies only to computed columns and columns of views. 1 = TRUE (gibt schreibgeschützten Zugriff an)1: TRUE (Indicates read-only access.)

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
UserDataAccessUserDataAccess Die Spalte wird von einer Funktion abgeleitet, die auf Daten in Benutzertabellen zugreift, einschließlich Sichten und temporäre Tabellen, die in der lokalen Instanz von SQL ServerSQL Server gespeichert sind.Column is derived from a function that accesses data in user tables, including views and temporary tables, stored in the local instance of SQL ServerSQL Server. Diese Eigenschaft gilt nur für berechnete Spalten und Spalten von Sichten.This property applies only to computed columns and columns of views. 1 = TRUE (gibt schreibgeschützten Zugriff an)1: TRUE (Indicates read-only access.)

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.
UsesAnsiTrimUsesAnsiTrim ANSI_PADDING wurde zum Zeitpunkt der Erstellung der Tabelle auf ON festgelegt.ANSI_PADDING was set ON at time of table creation. Diese Eigenschaft gilt nur für Spalten oder Parameter vom Typ char oder varchar.This property applies only to columns or parameters of type char or varchar. 1: TRUE1: TRUE

0: FALSE0: FALSE

NULL = Ungültige EingabeNULL: invalid input.

RückgabetypenReturn types

intint

AusnahmenExceptions

Gibt NULL bei einem Fehler zurück oder wenn ein Aufrufer nicht über Berechtigungen zum Anzeigen des Objekts verfügt.Returns NULL on error, or if a caller does not have permission to view the object.

Ein Benutzer kann nur die Metadaten sicherungsfähiger Elemente anzeigen, bei denen der Benutzer entweder der Besitzer ist oder für die dem Benutzer eine Berechtigung erteilt wurde.A user can only view the metadata of securables that the user owns or on which the user has been granted permission. Dies bedeutet, dass Metadaten ausgebende integrierte Funktionen, z.B. COLUMNPROPERTY, möglicherweise NULL zurückgeben, wenn dem Benutzer für das Objekt nicht die korrekte Berechtigung erteilt wurde.This means that metadata-emitting, built-in functions such as COLUMNPROPERTY might return NULL, if the user does not have correct permission on the object. Weitere Informationen finden Sie unter Konfigurieren der Sichtbarkeit von Metadaten.See Metadata Visibility Configuration for more information.

BemerkungenRemarks

Beim Überprüfen der deterministischen Eigenschaft einer Spalte prüfen Sie zuerst, ob die Spalte eine berechnete Spalte ist.When checking the deterministic property of a column, first test whether the column is a computed column. Das Argument IsDeterministic gibt für nicht berechnete Spalten NULL zurück.The IsDeterministic argument returns NULL for noncomputed columns. Berechnete Spalten können als Indexspalten angegeben werden.Computed columns can be specified as index columns.

BeispieleExamples

Dieses Beispiel gibt die Länge der Spalte LastName zurück.This example returns the length of the LastName column.

USE AdventureWorks2012;  
GO  
SELECT COLUMNPROPERTY( OBJECT_ID('Person.Person'),'LastName','PRECISION')AS 'Column Length';  
GO  

Hier ist das Resultset.Here is the result set.

Column Length
-------------
50

Weitere InformationenSee also

Metadata Functions (Transact-SQL) (Metadatenfunktionen (Transact-SQL))Metadata Functions (Transact-SQL)
TYPEPROPERTY (Transact-SQL)TYPEPROPERTY (Transact-SQL)