OBJECTPROPERTYEX (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL verwaltete Instanz Azure Synapse Analytics Platform System (PDW) SQL Analytics Platform-Endpunkt in Microsoft Fabric Warehouse in Microsoft Fabric Warehouse
Gibt Informationen zu schemabezogenen Objekten in der aktuellen Datenbank zurück. Eine Liste dieser Objekte finden Sie unter sys.objects (Transact-SQL). OBJECTPROPERTYEX kann nicht für Objekte verwendet werden, die keine schemabezogenen Objekte sind, wie z. B. Trigger der Datendefinitionssprache (DDL, Data Definition Language) und Ereignisbenachrichtigungen.
Transact-SQL-Syntaxkonventionen
Syntax
OBJECTPROPERTYEX ( id , property )
Hinweis
Informationen zum Anzeigen der Transact-SQL-Syntax für SQL Server 2014 (12.x) und früher finden Sie unter Dokumentation zu früheren Versionen.
Argumente
id
Ein Ausdruck, der die ID des Objekts in der aktuellen Datenbank darstellt. id ist vom Datentyp int, und es wird davon ausgegangen, dass es ein schemabezogenes Objekt im aktuellen Datenbankkontext ist.
property
Ein Ausdruck, der die Informationen enthält, die für das durch id angegebene Objekt zurückgegeben werden sollen. Der Rückgabetyp ist sql_variant. In der folgenden Tabelle ist der Basisdatentyp für die einzelnen Eigenschaftswertswerte aufgeführt.
Hinweis
Wenn nicht anders angegeben, wird NULL zurückgegeben, wenn property kein gültiger Eigenschaftsname ist, id keine gültige Objekt-ID ist, id ein nicht unterstützter Objekttyp für die angegebene Eigenschaft ist oder der Aufrufer nicht über die Berechtigung zum Anzeigen der Metadaten des Objekts verfügt.
Eigenschaftenname | Objekttyp | Beschreibung und Rückgabewerte |
---|---|---|
BaseType | Ein beliebiges schemabezogenes Objekt | Identifiziert den Basistyp des Objekts. Wenn das angegebene Objekt vom Typ SYNONYM ist, wird der Basistyp des zugrunde liegenden Objekts zurückgegeben. Ungleich NULL = Objekttyp Basisdatentyp: char(2) |
CnstIsClustKey | Constraint | PRIMARY KEY-Einschränkung mit einem gruppierten Index. 1 = True 0 = False Basisdatentyp: int |
CnstIsColumn | Constraint | Einschränkung CHECK, DEFAULT oder FOREIGN KEY für eine einzelne Spalte. 1 = True 0 = False Basisdatentyp: int |
CnstIsDeleteCascade | Constraint | FOREIGN KEY-Einschränkung mit der ON DELETE CASCADE-Option. 1 = True 0 = False Basisdatentyp: int |
CnstIsDisabled | Constraint | Deaktivierte Einschränkung. 1 = True 0 = False Basisdatentyp: int |
CnstIsNonclustKey | Constraint | PRIMARY KEY-Einschränkung mit einem nicht gruppierten Index. 1 = True 0 = False Basisdatentyp: int |
CnstIsNotRepl | Constraint | Die Einschränkung wird mithilfe der Schlüsselwörter NOT FOR REPLICATION definiert. 1 = True 0 = False Basisdatentyp: int |
CnstIsNotTrusted | Constraint | Die Einschränkung wurde ohne Überprüfung der vorhandenen Zeilen aktiviert. Daher gilt die Einschränkung möglicherweise nicht für alle Zeilen. 1 = True 0 = False Basisdatentyp: int |
CnstIsUpdateCascade | Constraint | FOREIGN KEY-Einschränkung mit der ON UPDATE CASCADE-Option. 1 = True 0 = False Basisdatentyp: int |
ExecIsAfterTrigger | Trigger | AFTER-Trigger. 1 = True 0 = False Basisdatentyp: int |
ExecIsAnsiNullsOn | Transact-SQL-Funktion, Transact-SQL-Prozedur, Transact-SQL-Trigger, Sicht | Die Einstellung von ANSI_NULLS zum Zeitpunkt der Erstellung. 1 = True 0 = False Basisdatentyp: int |
ExecIsDeleteTrigger | Trigger | DELETE-Trigger. 1 = True 0 = False Basisdatentyp: int |
ExecIsFirstDeleteTrigger | Trigger | Der erste Trigger, der beim Ausführen einer DELETE-Anweisung für die Tabelle ausgelöst wird. 1 = True 0 = False Basisdatentyp: int |
ExecIsFirstInsertTrigger | Trigger | Der erste Trigger, der beim Ausführen einer INSERT-Anweisung für die Tabelle ausgelöst wird. 1 = True 0 = False Basisdatentyp: int |
ExecIsFirstUpdateTrigger | Trigger | Der erste Trigger, der beim Ausführen einer UPDATE-Anweisung für die Tabelle ausgelöst wird. 1 = True 0 = False Basisdatentyp: int |
ExecIsInsertTrigger | Trigger | INSERT-Trigger. 1 = True 0 = False Basisdatentyp: int |
ExecIsInsteadOfTrigger | Trigger | INSTEAD OF-Trigger. 1 = True 0 = False Basisdatentyp: int |
ExecIsLastDeleteTrigger | Trigger | Der letzte Trigger, der beim Ausführen einer DELETE-Anweisung für die Tabelle ausgelöst wird. 1 = True 0 = False Basisdatentyp: int |
ExecIsLastInsertTrigger | Trigger | Der letzte Trigger, der beim Ausführen einer INSERT-Anweisung für die Tabelle ausgelöst wird. 1 = True 0 = False Basisdatentyp: int |
ExecIsLastUpdateTrigger | Trigger | Der letzte Trigger, der beim Ausführen einer UPDATE-Anweisung für die Tabelle ausgelöst wird. 1 = True 0 = False Basisdatentyp: int |
ExecIsQuotedIdentOn | Transact-SQL-Funktion, Transact-SQL-Prozedur, Transact-SQL-Trigger, Sicht | Einstellung von QUOTED_IDENTIFIER zum Zeitpunkt der Erstellung. 1 = True 0 = False Basisdatentyp: int |
ExecIsStartup | Verfahren | Autostartprozedur. 1 = True 0 = False Basisdatentyp: int |
ExecIsTriggerDisabled | Trigger | Deaktivierter Trigger. 1 = True 0 = False Basisdatentyp: int |
ExecIsTriggerNotForRepl | Trigger | Als NOT FOR REPLICATION definierter Trigger. 1 = True 0 = False Basisdatentyp: int |
ExecIsUpdateTrigger | Trigger | UPDATE-Trigger. 1 = True 0 = False Basisdatentyp: int |
ExecIsWithNativeCompilation | Transact-SQL-Prozedur | Gilt für: SQL Server 2014 (12.x) und höher. Die Prozedur wird systemintern kompiliert. 1 = True 0 = False Basisdatentyp: int |
HasAfterTrigger | Tabelle, Sicht | Die Tabelle oder Sicht besitzt einen AFTER-Trigger. 1 = True 0 = False Basisdatentyp: int |
HasDeleteTrigger | Tabelle, Sicht | Die Tabelle oder Sicht besitzt einen DELETE-Trigger. 1 = True 0 = False Basisdatentyp: int |
HasInsertTrigger | Tabelle, Sicht | Die Tabelle oder Sicht besitzt einen INSERT-Trigger. 1 = True 0 = False Basisdatentyp: int |
HasInsteadOfTrigger | Tabelle, Sicht | Die Tabelle oder Sicht besitzt einen INSTEAD OF-Trigger. 1 = True 0 = False Basisdatentyp: int |
HasUpdateTrigger | Tabelle, Sicht | Die Tabelle oder Sicht besitzt einen UPDATE-Trigger. 1 = True 0 = False Basisdatentyp: int |
IsAnsiNullsOn | Transact-SQL-Funktion, Transact-SQL-Prozedur, Tabelle, Transact-SQL-Trigger, Sicht | Gibt an, dass die Einstellung der Option ANSI_NULLS für die Tabelle ON ist, d. h. alle Vergleiche mit einem NULL-Wert zu UNKNOWN ausgewertet werden. Diese Einstellung gilt für alle Ausdrücke in der Tabellendefinition, einschließlich berechneter Spalten und Einschränkungen, solange die Tabelle vorhanden ist. 1 = True 0 = False Basisdatentyp: int |
IsCheckCnst | Ein beliebiges schemabezogenes Objekt | CHECK-Einschränkung. 1 = True 0 = False Basisdatentyp: int |
IsConstraint | Ein beliebiges schemabezogenes Objekt | Einschränkung. 1 = True 0 = False Basisdatentyp: int |
IsDefault | Ein beliebiges schemabezogenes Objekt | Gilt für: SQL Server 2008 (10.0.x) und höher. Gebundener Standard. 1 = True 0 = False Basisdatentyp: int |
IsDefaultCnst | Ein beliebiges schemabezogenes Objekt | DEFAULT-Einschränkung. 1 = True 0 = False Basisdatentyp: int |
IsDeterministic | Skalare Funktionen und Tabellenwertfunktionen, Sicht | Die Determinismuseigenschaft der Funktion oder Sicht. 1 = Deterministisch 0 = Nicht deterministisch Basisdatentyp: int |
IsEncrypted | Transact-SQL-Funktion, Transact-SQL-Prozedur, Tabelle, Transact-SQL-Trigger, Sicht | Gibt an, dass der Originaltext der Modulanweisung in ein verborgenes Format umgewandelt wurde. Die Ausgabe der Verbergung ist nicht direkt in den Katalogsichten in SQL Server 2005 (9.x) sichtbar. Benutzer, die keinen Zugriff auf Systemtabellen oder Datenbankdateien haben, können den verborgenen Text nicht abrufen. Der Text ist jedoch für Benutzer verfügbar, die entweder auf die Systemtabellen über den DAC-Port oder direkt auf die Datenbankdateien zugreifen können. Des Weiteren können Benutzer, die einen Debugger an den Serverprozess anfügen können, die ursprüngliche Prozedur zur Laufzeit aus dem Arbeitsspeicher abrufen. 1 = Verschlüsselt. 0 = Nicht verschlüsselt Basisdatentyp: int |
IsExecuted | Ein beliebiges schemabezogenes Objekt | Gibt an, dass das Objekt ausgeführt werden kann (Sicht, Prozedur, Funktion oder Trigger). 1 = True 0 = False Basisdatentyp: int |
IsExtendedProc | Ein beliebiges schemabezogenes Objekt | Erweiterte Prozedur. 1 = True 0 = False Basisdatentyp: int |
IsForeignKey | Ein beliebiges schemabezogenes Objekt | FOREIGN KEY-Einschränkung. 1 = True 0 = False Basisdatentyp: int |
IsIndexed | Tabelle, Sicht | Tabelle oder Sicht mit einem Index. 1 = True 0 = False Basisdatentyp: int |
IsIndexable | Tabelle, Sicht | Tabelle oder Sicht, für die ein Index erstellt werden kann. 1 = True 0 = False Basisdatentyp: int |
IsInlineFunction | Funktion | Inlinefunktion. 1 = Inlinefunktion 0 = Keine Inlinefunktion Basisdatentyp: int |
IsMSShipped | Ein beliebiges schemabezogenes Objekt | Ein Objekt, das bei der Installation von SQL Server erstellt wurde. 1 = True 0 = False Basisdatentyp: int |
IsPrecise | Berechnete Spalte, Funktion, benutzerdefinierter Typ, Sicht | Zeigt an, ob das Objekt eine unpräzise Berechnung, wie z. B. Gleitkommaoperationen, enthält. 1 = Genau 0 = Unpräzise Basisdatentyp: int |
IsPrimaryKey | Ein beliebiges schemabezogenes Objekt | PRIMARY KEY-Einschränkung. 1 = True 0 = False Basisdatentyp: int |
IsProcedure | Ein beliebiges schemabezogenes Objekt | Prozedur. 1 = True 0 = False Basisdatentyp: int |
IsQuotedIdentOn | CHECK-Einschränkung, DEFAULT-Definition, Transact-SQL-Funktion, Transact-SQL-Prozedur, Tabelle, Transact-SQL-Trigger, Sicht | Gibt an, dass die Einstellung für Bezeichner in Anführungszeichen für das Objekt ON ist, d. h., dass doppelte Anführungszeichen Bezeichner in allen an der Objektdefinition beteiligten Ausdrücken begrenzen. 1 = True 0 = False Basisdatentyp: int |
IsQueue | Ein beliebiges schemabezogenes Objekt | Service Broker-Warteschlange. 1 = True 0 = False Basisdatentyp: int |
IsReplProc | Ein beliebiges schemabezogenes Objekt | Replikationsprozedur. 1 = True 0 = False Basisdatentyp: int |
IsRule | Ein beliebiges schemabezogenes Objekt | Gebundene Regel. 1 = True 0 = False Basisdatentyp: int |
IsScalarFunction | Funktion | Skalarwertfunktion. 1 = Skalarwertfunktion 0 = Keine Skalarwertfunktion Basisdatentyp: int |
IsSchemaBound | Funktion, Prozedur, Sicht | Schemagebundene Funktion oder mithilfe von SCHEMABINDING erstellte Sicht. 1 = Schemagebunden 0 = Nicht schemagebunden Basisdatentyp: int |
IsSystemTable | Tabelle | Systemtabelle. 1 = True 0 = False Basisdatentyp: int |
IsSystemVerified | Berechnete Spalte, Funktion, benutzerdefinierter Typ, Sicht | Die Genauigkeits- und Determinismuseigenschaften des Objekts können von SQL Server überprüft werden. 1 = True 0 = False Basisdatentyp: int |
IsTable | Tabelle | Tabelle. 1 = True 0 = False Basisdatentyp: int |
IsTableFunction | Funktion | Tabellenwertfunktion. 1 = Tabellenwertfunktion 0 = Keine Tabellenwertfunktion Basisdatentyp: int |
IsTrigger | Ein beliebiges schemabezogenes Objekt | Trigger. 1 = True 0 = False Basisdatentyp: int |
IsUniqueCnst | Ein beliebiges schemabezogenes Objekt | UNIQUE-Einschränkung. 1 = True 0 = False Basisdatentyp: int |
IsUserTable | Tabelle | Benutzerdefinierte Tabelle. 1 = True 0 = False Basisdatentyp: int |
IsView | Ansicht | Sicht. 1 = True 0 = False Basisdatentyp: int |
OwnerId | Ein beliebiges schemabezogenes Objekt | Besitzer des Objekts. Hinweis: Der Schemabesitzer ist nicht notwendigerweise der Objektbesitzer. Beispielsweise geben untergeordnete Objekte (Objekte, bei denen der Wert von parent_object_id ungleich NULL ist) immer die gleiche Besitzer-ID zurück wie das übergeordnete Objekt. Ungleich NULL = Datenbankbenutzer-ID des Objektbesitzers. NULL = Nicht unterstützter Objekttyp oder ungültige Objekt-ID. Basisdatentyp: int |
SchemaId | Ein beliebiges schemabezogenes Objekt | Die ID des dem Objekt zugeordneten Schemas. Ungleich NULL = Schema-ID des Objekts. Basisdatentyp: int |
SystemDataAccess | Funktion, Sicht | Das Objekt greift auf Systemdaten, Systemkataloge oder virtuelle Systemtabellen in der lokalen Instanz von SQL Server zu. 0 = Keine 1 = Lesen Basisdatentyp: int |
TableDeleteTrigger | Tabelle | Die Tabelle besitzt einen DELETE-Trigger. > 1 = ID des ersten Triggers vom angegebenen Typ. Basisdatentyp: int |
TableDeleteTriggerCount | Tabelle | Die Tabelle besitzt die angegebene Anzahl von DELETE-Triggern. Ungleich NULL = Anzahl von DELETE-Triggern Basisdatentyp: int |
TableFullTextMergeStatus | Tabelle | Gilt für: SQL Server 2008 (10.0.x) und höher. Gibt an, ob eine Tabelle über einen Volltextindex verfügt, der gerade zusammengeführt wird. 0 = Tabelle hat keinen Volltextindex, oder der Volltextindex wird derzeit nicht zusammengeführt. 1 = Der Volltextindex wird derzeit zusammengeführt. |
TableFullTextBackgroundUpdateIndexOn | Tabelle | Gilt für: SQL Server 2008 (10.0.x) und später Das Update von Volltextindizes im Hintergrund (automatische Änderungsnachverfolgung) ist für die Tabelle aktiviert. 1 = TRUE 0 = FALSE Basisdatentyp: int |
TableFulltextCatalogId | Tabelle | Gilt für: SQL Server 2008 (10.0.x) und höher. ID des Volltextkatalogs, in dem die Daten des Volltextindexes für die Tabelle gespeichert sind. Ungleich 0 = ID des Volltextkatalogs, die dem eindeutigen Index zugeordnet ist, der die Zeilen in einer volltextindizierten Tabelle identifiziert. 0 = Die Tabelle besitzt keinen Volltextindex. Basisdatentyp: int |
TableFullTextChangeTrackingOn | Tabelle | Gilt für: SQL Server 2008 (10.0.x) und höher. Die Volltext-Änderungsnachverfolgung ist für die Tabelle aktiviert. 1 = TRUE 0 = FALSE Basisdatentyp: int |
TableFulltextDocsProcessed | Tabelle | Gilt für: SQL Server 2008 (10.0.x) und höher. Die Anzahl der seit dem Start der Volltextindizierung verarbeiteten Zeilen. In einer Tabelle, die für die Volltextsuche indiziert wird, werden alle Spalten einer Zeile als Teil eines zu indizierenden Dokuments betrachtet. 0 = Keine aktive Durchforstungs- oder Volltextindizierung wurde abgeschlossen. > 0 = Eine der folgenden Möglichkeiten (A oder B): A) Die Anzahl der seit dem Start der vollständigen, inkrementellen oder manuellen Änderungsnachverfolgung mithilfe von Einfüge- und Updatevorgängen verarbeiteten Dokumente; B) Die Anzahl der Zeilen, die mithilfe von Einfüge- und Updatevorgängen verarbeitet wurden, seit die Änderungsnachverfolgung mit Auffüllung mithilfe von Indexupdates im Hintergrund aktiviert wurde, das Schema für den Volltextindex geändert wurde, der Volltextkatalog erneut erstellt wurde oder die Instanz von SQL Server neu gestartet wurde usw. NULL = Die Tabelle besitzt keinen Volltextindex. Basisdatentyp: int Hinweis: Diese Eigenschaft überwacht oder zählt gelöschte Eigenschaften nicht. |
TableFulltextFailCount | Tabelle | Gilt für: SQL Server 2008 (10.0.x) und später Die Anzahl der Zeilen, die von der Volltextsuche nicht indiziert wurden. 0 = Die Auffüllung ist abgeschlossen. >0 = Eine der folgenden Möglichkeiten (A oder B): A) Die Anzahl der Dokumente, die seit dem Start der Auffüllung mithilfe der vollständigen, inkrementellen und manuellen Änderungsnachverfolgung nicht indiziert wurden; B) Bei der Änderungsnachverfolgung mit Indexupdate im Hintergrund die Anzahl der Zeilen, die seit dem Start der Auffüllung oder dem Neustart der Auffüllung nicht indiziert wurden. Dies könnte durch eine Schemaänderung, eine erneute Erstellung des Katalogs, einen Neustart des Servers usw. verursacht werden. NULL = Die Tabelle besitzt keinen Volltextindex. Basisdatentyp: int |
TableFulltextItemCount | Tabelle | Gilt für: SQL Server 2008 (10.0.x) und später Ungleich NULL = Anzahl der Zeilen, die erfolgreich volltextindiziert wurden. NULL = Die Tabelle besitzt keinen Volltextindex. Basisdatentyp: int |
TableFulltextKeyColumn | Tabelle | Gilt für: SQL Server 2008 (10.0.x) und später ID der Spalte, die dem eindeutigen einspaltigen Index zugeordnet ist, der Teil der Definition des Volltextindex und des semantischen Index ist. 0 = Die Tabelle besitzt keinen Volltextindex. Basisdatentyp: int |
TableFulltextPendingChanges | Tabelle | Gilt für: SQL Server 2008 (10.0.x) und höher. Anzahl der zu verarbeitenden ausstehenden Änderungsnachverfolgungseinträge. 0 = Änderungsnachverfolgung ist nicht aktiviert. NULL = Die Tabelle besitzt keinen Volltextindex. Basisdatentyp: int |
TableFulltextPopulateStatus | Tabelle | Gilt für: SQL Server 2008 (10.0.x) und höher. 0 = Im Leerlauf. 1 = Vollständige Auffüllung wird ausgeführt. 2 = Inkrementelle Auffüllung wird ausgeführt. 3 = Propagierung der Überarbeitungen wird ausgeführt. 4 = Indexupdate im Hintergrund wird ausgeführt, z. B. automatische Änderungsnachverfolgung. 5 = Volltextindizierung wurde gedrosselt oder angehalten. 6 = Ein Fehler ist aufgetreten. Überprüfen Sie das Auffüllungsprotokoll für Details. Weitere Informationen finden Sie im Abschnitt Beheben von Fehlern in einer Volltextauffüllung (Crawl) unter Auffüllen von Volltextindizes. Basisdatentyp: int |
TableFullTextSemanticExtraction | Tabelle | Gilt für: SQL Server 2012 (11.x) und höher. Die Tabelle ist für die semantische Indizierung aktiviert. 1 = True 0 = False Basisdatentyp: int |
TableHasActiveFulltextIndex | Tabelle | Gilt für: SQL Server 2008 (10.0.x) und höher. Die Tabelle besitzt einen aktiven Volltextindex. 1 = True 0 = False Basisdatentyp: int |
TableHasCheckCnst | Tabelle | Die Tabelle besitzt eine CHECK-Einschränkung. 1 = True 0 = False Basisdatentyp: int |
TableHasClustIndex | Tabelle | Die Tabelle besitzt einen gruppierten Index. 1 = True 0 = False Basisdatentyp: int |
TableHasDefaultCnst | Tabelle | Die Tabelle besitzt eine DEFAULT-Einschränkung. 1 = True 0 = False Basisdatentyp: int |
TableHasDeleteTrigger | Tabelle | Die Tabelle besitzt einen DELETE-Trigger. 1 = True 0 = False Basisdatentyp: int |
TableHasForeignKey | Tabelle | Die Tabelle besitzt eine FOREIGN KEY-Einschränkung. 1 = True 0 = False Basisdatentyp: int |
TableHasForeignRef | Tabelle | Auf die Tabelle wird mit einer FOREIGN KEY-Einschränkung verwiesen. 1 = True 0 = False Basisdatentyp: int |
TableHasIdentity | Tabelle | Die Tabelle besitzt eine Identitätsspalte. 1 = True 0 = False Basisdatentyp: int |
TableHasIndex | Tabelle | Die Tabelle besitzt einen Index beliebigen Typs. 1 = True 0 = False Basisdatentyp: int |
TableHasInsertTrigger | Tabelle | Das Objekt besitzt einen INSERT-Trigger. 1 = True 0 = False Basisdatentyp: int |
TableHasNonclustIndex | Tabelle | Die Tabelle besitzt einen nicht gruppierten Index. 1 = True 0 = False Basisdatentyp: int |
TableHasPrimaryKey | Tabelle | Die Tabelle besitzt einen Primärschlüssel. 1 = True 0 = False Basisdatentyp: int |
TableHasRowGuidCol | Tabelle | Die Tabelle besitzt eine ROWGUIDCOL-Eigenschaft für eine uniqueidentifier-Spalte. 1 = True 0 = False Basisdatentyp: int |
TableHasTextImage | Tabelle | Die Tabelle besitzt eine text-, ntext- oder image-Spalte. 1 = True 0 = False Basisdatentyp: int |
TableHasTimestamp | Tabelle | Die Tabelle besitzt eine timestamp-Spalte. 1 = True 0 = False Basisdatentyp: int |
TableHasUniqueCnst | Tabelle | Die Tabelle besitzt eine UNIQUE-Einschränkung. 1 = True 0 = False Basisdatentyp: int |
TableHasUpdateTrigger | Tabelle | Das Objekt besitzt einen UPDATE-Trigger. 1 = True 0 = False Basisdatentyp: int |
TableHasVarDecimalStorageFormat | Tabelle | Die Tabelle lässt das vardecimal-Speicherformat zu. 1 = True 0 = False |
TableInsertTrigger | Tabelle | Die Tabelle besitzt einen INSERT-Trigger. > 1 = ID des ersten Triggers vom angegebenen Typ. Basisdatentyp: int |
TableInsertTriggerCount | Tabelle | Die Tabelle besitzt die angegebene Anzahl von INSERT-Triggern. > 0 = Anzahl von INSERT-Triggern. Basisdatentyp: int |
TableIsFake | Tabelle | Die Tabelle ist in Wirklichkeit nicht vorhanden. Sie wird bei Bedarf durch die Datenbank-Engine intern materialisiert. 1 = True 0 = False Basisdatentyp: int |
TableIsLockedOnBulkLoad | Tabelle | Die Tabelle ist aufgrund eines bcp- oder BULK INSERT-Auftrags gesperrt. 1 = True 0 = False Basisdatentyp: int |
TableIsMemoryOptimized | Tabelle | Gilt für: SQL Server 2014 (12.x) und höher. Tabelle ist speicheroptimiert 1 = True 0 = False Basisdatentyp: int Weitere Informationen finden Sie unter In-Memory OLTP (Speicheroptimierung). |
TableIsPinned | Tabelle | Die Tabelle ist fixiert, damit sie im Datencache gespeichert wird. 0 = False Dieses Feature wird in SQL Server 2005 (9.x) und höheren Versionen nicht unterstützt. |
TableTextInRowLimit | Tabelle | Für die Tabelle wurde die text in row-Option festgelegt. > 0 = Maximale Anzahl von Bytes, die für text in row zulässig sind. 0 = Die Option text in row ist nicht festgelegt. Basisdatentyp: int |
TableUpdateTrigger | Tabelle | Die Tabelle besitzt einen UPDATE-Trigger. > 1 = ID des ersten Triggers vom angegebenen Typ. Basisdatentyp: int |
TableUpdateTriggerCount | Tabelle | Die Tabelle besitzt die angegebene Anzahl von UPDATE-Triggern. > 0 = Anzahl von UPDATE-Triggern. Basisdatentyp: int |
UserDataAccess | Funktion, Sicht | an, dass das Objekt auf Benutzerdaten und Benutzertabellen in der lokalen Instanz von SQL Server zugreift. 1 = Lesen 0 = Keine Basisdatentyp: int |
TableHasColumnSet | Tabelle | Die Tabelle besitzt einen Spaltensatz. 0 = False 1 = True Weitere Informationen finden Sie unter Verwenden von Spaltensätzen. |
Kardinalität | Tabelle (System oder benutzerdefiniert), Sicht oder Index | Gilt für: SQL Server 2012 (11.x) und höher. Die Anzahl von Zeilen im angegebenen Objekt. |
TableTemporalType | Tabelle | Gilt für: SQL Server 2016 (13.x) und höher. Gibt den Typ der Tabelle an. 0 = Nicht temporale Tabelle 1 = Verlaufstabelle für die Tabelle mit Systemversionsverwaltung 2 = Temporale Tabelle mit Systemversionsverwaltung |
Rückgabetypen
sql_variant
Ausnahmen
Gibt NULL bei einem Fehler zurück oder wenn ein Aufrufer nicht über Berechtigungen zum Anzeigen des Objekts verfügt.
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. Dies bedeutet, dass Metadaten ausgebende integrierte Funktionen, z. B. OBJECTPROPERTYEX, möglicherweise NULL zurückgeben, wenn dem Benutzer für das Objekt keine Berechtigung erteilt wurde. Weitere Informationen finden Sie unter Metadata Visibility Configuration.
Bemerkungen
Datenbank-Engine setzt voraus, dass sich object_id im aktuellen Datenbankkontext befindet. Eine Abfrage, die auf object_id in einer anderen Datenbank verweist, gibt NULL oder falsche Ergebnisse zurück. Beispielsweise ist der aktuelle Datenbankkontext in der folgenden Abfrage die Masterdatenbank. Die Datenbank-Engine versucht, den Eigenschaftenwert für die angegebene object_id in dieser Datenbank zurückzugeben und nicht in der Datenbank, die in der Abfrage angegeben ist. Die Abfrage gibt falsche Ergebnisse zurück, da sich die vEmployee
-Sicht nicht in der Masterdatenbank befindet.
USE master;
GO
SELECT OBJECTPROPERTYEX(OBJECT_ID(N'AdventureWorks2022.HumanResources.vEmployee'), 'IsView');
GO
OBJECTPROPERTYEX(view_id, 'IsIndexable') hat möglicherweise einen hohen Verbrauch an Computerressourcen, da die Auswertung der IsIndexable-Eigenschaft das Analysieren der Sichtdefinition, die Normalisierung und die partielle Optimierung erfordert. Obwohl die IsIndexable-Eigenschaft Tabellen oder Sichten identifiziert, die indiziert werden können, kann die tatsächliche Erstellung des Indexes dennoch fehlschlagen, wenn bestimmte Indexschlüsselanforderungen nicht erfüllt sind. Weitere Informationen finden Sie unter CREATE INDEX (Transact-SQL).
OBJECTPROPERTYEX(table_id, 'TableHasActiveFulltextIndex') gibt den Wert 1 (TRUE) zurück, wenn mindestens eine Spalte einer Tabelle für die Indizierung hinzugefügt wurde. Die Volltextindizierung wird für das Auffüllen aktiviert, sobald die erste Spalte für die Indizierung hinzugefügt wird.
Einschränkungen für die Sichtbarkeit von Metadaten werden auf das Resultset angewendet. Weitere Informationen finden Sie unter Metadata Visibility Configuration.
Beispiele
A. Suchen des Basistyps eines Objekts
Im folgenden Beispiel wird mithilfe von SYNONYM MyEmployeeTable
ein Synonym für die Employee
-Tabelle in der AdventureWorks2022
-Datenbank erstellt und anschließend der Basistyp von SYNONYM zurückgegeben.
USE AdventureWorks2022;
GO
CREATE SYNONYM MyEmployeeTable FOR HumanResources.Employee;
GO
SELECT OBJECTPROPERTYEX ( object_id(N'MyEmployeeTable'), N'BaseType')AS [Base Type];
GO
Das Resultset zeigt, dass es sich bei dem Basistyp des zugrunde liegenden Objekts, der Employee
-Tabelle, um eine Benutzertabelle handelt.
Base Type
--------
U
B. Zurückgeben eines Eigenschaftswerts
Im folgenden Beispiel wird die Anzahl der UPDATE-Trigger für die angegebene Tabelle zurückgegeben.
USE AdventureWorks2022;
GO
SELECT OBJECTPROPERTYEX(OBJECT_ID(N'HumanResources.Employee'), N'TABLEUPDATETRIGGERCOUNT');
GO
C. Suchen von Tabellen, die eine FOREIGN KEY-Einschränkung aufweisen
Im folgenden Beispiel wird die TableHasForeignKey
-Eigenschaft verwendet, um alle Tabellen zurückzugeben, die eine FOREIGN KEY-Einschränkung aufweisen.
USE AdventureWorks2022;
GO
SELECT name, object_id, schema_id, type_desc
FROM sys.objects
WHERE OBJECTPROPERTYEX(object_id, N'TableHasForeignKey') = 1
ORDER BY name;
GO
Beispiele: Azure Synapse Analytics und Analytics-Plattformsystem (PDW)
D: Suchen des Basistyps eines Objekts
Das folgende Beispiel gibt den Basistyp des dbo.DimReseller
-Objekts zurück.
-- Uses AdventureWorks
SELECT OBJECTPROPERTYEX ( object_id(N'dbo.DimReseller'), N'BaseType')AS BaseType;
Das Resultset zeigt, dass es sich bei dem Basistyp des zugrunde liegenden Objekts, der dbo.DimReseller
-Tabelle, um eine Benutzertabelle handelt.
BaseType
--------
U
Siehe auch
CREATE SYNONYM (Transact-SQL)
Metadatenfunktionen (Transact-SQL)
OBJECT_DEFINITION (Transact-SQL)
OBJECT_ID (Transact-SQL)
OBJECT_NAME (Transact-SQL)
sys.objects (Transact-SQL)
ALTER AUTHORIZATION (Transact-SQL)
TYPEPROPERTY (Transact-SQL)