sys.tables (Transact-SQL)sys.tables (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 Database JaVerwaltete Azure SQL-InstanzAzure SQL Managed InstanceYesVerwaltete Azure SQL-InstanzAzure SQL Managed Instance JaAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics JaParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data WarehouseAnwendungsbereich:Applies to: JaSQL ServerSQL Server (alle unterstützten Versionen) yesSQL ServerSQL Server (all supported versions) JaAzure SQL-DatenbankAzure SQL DatabaseYesAzure SQL-DatenbankAzure SQL Database JaVerwaltete Azure SQL-InstanzAzure SQL Managed InstanceYesVerwaltete Azure SQL-InstanzAzure SQL Managed Instance JaAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics JaParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data Warehouse

Gibt eine Zeile für jede Benutzertabelle in SQL ServerSQL Server zurück.Returns a row for each user table in SQL ServerSQL Server.

SpaltennameColumn name DatentypData type BESCHREIBUNGDescription
<inherited columns> Eine Liste der Spalten, die diese Sicht erbt, finden Sie unter sys. Objects (Transact-SQL-).For a list of columns that this view inherits, see sys.objects (Transact-SQL).
lob_data_space_idlob_data_space_id intint Ein Wert ungleich 0 (null) ist die ID des Datenbereichs (Dateigruppe oder Partitionsschema), der die LOB-Binärdaten (Large Object) für diese Tabelle enthält.A nonzero value is the ID of the data space (filegroup or partition scheme) that holds the large object binary (LOB) data for this table. Beispiele für LOB-Datentypen sind varbinary (max), varchar (max), geographyoder XML.Examples of LOB data types include varbinary(max), varchar(max), geography, or xml.

0 = Die Tabelle enthält keine LOB-Daten.0 = The table does not LOB data.
filestream_data_space_idfilestream_data_space_id intint Die ID des Datenbereichs für eine FILESTREAM-Dateigruppe oder ein Partitionsschema, das aus FILESTREAM-Dateigruppen besteht.Is the data space ID for a FILESTREAM filegroup or a partition scheme that consists of FILESTREAM filegroups.

Um den Namen einer FILESTREAM-Datei Gruppe zu melden, führen Sie die Abfrage aus SELECT FILEGROUP_NAME (filestream_data_space_id) FROM sys.tables .To report the name of a FILESTREAM filegroup, execute the query SELECT FILEGROUP_NAME (filestream_data_space_id) FROM sys.tables.

sys.tables kann zu den folgenden Sichten über filestream_data_space_id = data_space_id verknüpft werden.sys.tables can be joined to the following views on filestream_data_space_id = data_space_id.

-sys. File Groups- sys.filegroups

-sys. partition_schemes- sys.partition_schemes

-sys. Indexes- sys.indexes

-sys. allocation_units- sys.allocation_units

-sys. fulltext_catalogs- sys.fulltext_catalogs

-sys. data_spaces- sys.data_spaces

-sys. destination_data_spaces- sys.destination_data_spaces

-sys. master_files- sys.master_files

-sys. database_files- sys.database_files

-Backup File Group (Join on filegroup_id)- backupfilegroup (join on filegroup_id)
max_column_id_usedmax_column_id_used intint Höchste Spalten-ID, die von dieser Tabelle je verwendet wurdeMaximum column ID ever used by this table.
lock_on_bulk_loadlock_on_bulk_load bitbit Die Tabelle wird bei Massenladevorgängen gesperrt.Table is locked on bulk load. Weitere Informationen finden Sie unter sp_tableoption (Transact-SQL).For more information, see sp_tableoption (Transact-SQL).
uses_ansi_nullsuses_ansi_nulls bitbit Beim Erstellen der Tabelle war die Datenbankoption SET ANSI_NULLS auf ON festgelegt.Table was created with the SET ANSI_NULLS database option ON.
is_replicatedis_replicated bitbit 1 = Die Tabelle wird mithilfe der Momentaufnahme- oder der Transaktionsreplikation veröffentlicht.1 = Table is published using snapshot replication or transactional replication.
has_replication_filterhas_replication_filter bitbit 1 = Die Tabelle hat einen Replikationsfilter.1 = Table has a replication filter.
is_merge_publishedis_merge_published bitbit 1 = Die Tabelle wird mithilfe der Mergereplikation veröffentlicht.1 = Table is published using merge replication.
is_sync_tran_subscribedis_sync_tran_subscribed bitbit 1 = Die Tabelle wird mithilfe eines Abonnements mit sofortigem Update abonniert.1 = Table is subscribed using an immediate updating subscription.
has_unchecked_assembly_datahas_unchecked_assembly_data bitbit 1 = Die Tabelle enthält persistente Daten, die von einer Assembly abhängen, deren Definition bei der letzten ALTER ASSEMBLY-Anweisung geändert wurde.1 = Table contains persisted data that depends on an assembly whose definition changed during the last ALTER ASSEMBLY. Der Wert wird nach der nächsten erfolgreichen Ausführung von DBCC CHECKDB oder DBCC CHECKTABLE auf 0 zurückgesetzt.Will be reset to 0 after the next successful DBCC CHECKDB or DBCC CHECKTABLE.
text_in_row_limittext_in_row_limit intint Die zulässige Höchstzahl der Bytes für Text in Zeilen.The maximum bytes allowed for text in row.

0 = die Option Text in row ist nicht festgelegt.0 = Text in row option is not set. Weitere Informationen finden Sie unter sp_tableoption (Transact-SQL).For more information, see sp_tableoption (Transact-SQL).
large_value_types_out_of_rowlarge_value_types_out_of_row bitbit 1 = Umfangreiche Werttypen werden außerhalb der Zeile gespeichert.1 = Large value types are stored out-of-row. Weitere Informationen finden Sie unter sp_tableoption (Transact-SQL).For more information, see sp_tableoption (Transact-SQL).
is_tracked_by_cdcis_tracked_by_cdc bitbit 1 = Tabelle wird für Change Data Capture aktiviert.1 = Table is enabled for change data capture. Weitere Informationen finden Sie unter sys. sp_cdc_enable_table (Transact-SQL-).For more information, see sys.sp_cdc_enable_table (Transact-SQL).
lock_escalationlock_escalation tinyinttinyint Der Wert der LOCK_ESCALATION-Option für die Tabelle:The value of the LOCK_ESCALATION option for the table:

0 = TABLE0 = TABLE

1 = DISABLE1 = DISABLE

2 = AUTO2 = AUTO
lock_escalation_desclock_escalation_desc nvarchar(60)nvarchar(60) Eine Textbeschreibung der lock_escalation-Option für die Tabelle.A text description of the lock_escalation option for the table. Mögliche Werte sind TABLE, AUTO und DISABLE.Possible values are: TABLE, AUTO, and DISABLE.
is_filetableis_filetable bitbit Gilt für: SQL Server 2012 (11.x)SQL Server 2012 (11.x) und höher und Azure SQL-DatenbankAzure SQL Database.Applies to: SQL Server 2012 (11.x)SQL Server 2012 (11.x) and later and Azure SQL-DatenbankAzure SQL Database.

1 = Tabelle ist eine FileTable.1 = Table is a FileTable.

Weitere Informationen zu FileTables finden Sie unter FileTables (SQL Server).For more information about FileTables, see FileTables (SQL Server).
durabilitydurability tinyinttinyint Gilt für: SQL Server 2014 (12.x)SQL Server 2014 (12.x) und höher und Azure SQL-DatenbankAzure SQL Database.Applies to: SQL Server 2014 (12.x)SQL Server 2014 (12.x) and later and Azure SQL-DatenbankAzure SQL Database.

Folgende Werte sind möglich:The following are possible values:

0 = SCHEMA_AND_DATA0 = SCHEMA_AND_DATA

1 = SCHEMA_ONLY1 = SCHEMA_ONLY

0 ist der Standardwert.The value of 0 is the default value.
durability_descdurability_desc nvarchar(60)nvarchar(60) Gilt für: SQL Server 2014 (12.x)SQL Server 2014 (12.x) und höher und Azure SQL-DatenbankAzure SQL Database.Applies to: SQL Server 2014 (12.x)SQL Server 2014 (12.x) and later and Azure SQL-DatenbankAzure SQL Database.

Folgende Werte sind möglich:The following are the possible values:

SCHEMA_ONLYSCHEMA_ONLY

SCHEMA_AND_DATASCHEMA_AND_DATA

Der Wert von SCHEMA_AND_DATA gibt an, dass die Tabelle eine dauerhafte speicherinterne Tabelle ist.The value of SCHEMA_AND_DATA indicates that the table is a durable, in-memory table. SCHEMA_AND_DATA ist der Standardwert für Speicher optimierte Tabellen.SCHEMA_AND_DATA is the default value for memory optimized tables. Der Wert von SCHEMA_ONLY gibt an, dass die Tabellendaten nicht nach dem Neustart der Datenbank mit speicheroptimierten Objekten beibehalten werden.The value of SCHEMA_ONLY indicates that the table data will not be persisted upon restart of the database with memory optimized objects.
is_memory_optimizedis_memory_optimized bitbit Gilt für: SQL Server 2014 (12.x)SQL Server 2014 (12.x) und höher und Azure SQL-DatenbankAzure SQL Database.Applies to: SQL Server 2014 (12.x)SQL Server 2014 (12.x) and later and Azure SQL-DatenbankAzure SQL Database.

Folgende Werte sind möglich:The following are the possible values:

0 = nicht speicheroptimiert.0 = not memory optimized.

1 = ist speicheroptimiert.1 = is memory optimized.

Der Standardwert ist 0 (null).A value of 0 is the default value.

Speicher optimierte Tabellen sind in-Memory-Benutzer Tabellen, deren Schema auf dem Datenträger gespeichert wird, ähnlich wie andere Benutzer Tabellen.Memory optimized tables are in-memory user tables, the schema of which is persisted on disk similar to other user tables. Auf Speicher optimierte Tabellen kann von System intern kompilierten gespeicherten Prozeduren aus zugegriffen werden.Memory optimized tables can be accessed from natively compiled stored procedures.
temporal_typetemporal_type tinyinttinyint Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher und Azure SQL-DatenbankAzure SQL Database.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later and Azure SQL-DatenbankAzure SQL Database.

Der numerische Wert, der den Typ der Tabelle darstellt:The numeric value representing the type of table:

0 = NON_TEMPORAL_TABLE0 = NON_TEMPORAL_TABLE

1 = HISTORY_TABLE1 = HISTORY_TABLE

2 = SYSTEM_VERSIONED_TEMPORAL_TABLE2 = SYSTEM_VERSIONED_TEMPORAL_TABLE
temporal_type_desctemporal_type_desc nvarchar(60)nvarchar(60) Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher und Azure SQL-DatenbankAzure SQL Database.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later and Azure SQL-DatenbankAzure SQL Database.

Die Textbeschreibung des Tabellentyps:The text description of the type of table:

NON_TEMPORAL_TABLENON_TEMPORAL_TABLE

HISTORY_TABLEHISTORY_TABLE

SYSTEM_VERSIONED_TEMPORAL_TABLESYSTEM_VERSIONED_TEMPORAL_TABLE
history_table_idhistory_table_id intint Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher und Azure SQL-DatenbankAzure SQL Database.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later and Azure SQL-DatenbankAzure SQL Database.

Wenn temporal_type in (2, 4) object_id der Tabelle zurückgibt, in der Verlaufs Daten verwaltet werden, andernfalls wird NULL zurückgegeben.When temporal_type IN (2, 4) returns object_id of the table that maintains historical data, otherwise returns NULL.
is_remote_data_archive_enabledis_remote_data_archive_enabled bitbit Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher und Azure SQL-DatenbankAzure SQL DatabaseApplies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later and Azure SQL-DatenbankAzure SQL Database

Gibt an, ob die Tabelle Stretch-aktiviert ist.Indicates whether the table is Stretch-enabled.

0 = die Tabelle ist nicht Stretch-aktiviert.0 = The table is not Stretch-enabled.

1 = die Tabelle ist Stretch-aktiviert.1 = The table is Stretch-enabled.

Weitere Informationen finden Sie unter Stretch Database.For more info, see Stretch Database.
is_externalis_external bitbit Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher, Azure SQL-DatenbankAzure SQL Database und Azure Synapse Analytics (SQL Data Warehouse)Azure Synapse Analytics (SQL Data Warehouse) .Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later, Azure SQL-DatenbankAzure SQL Database, and Azure Synapse Analytics (SQL Data Warehouse)Azure Synapse Analytics (SQL Data Warehouse).

Gibt an, dass die Tabelle eine externe Tabelle ist.Indicates table is an external table.

0 = die Tabelle ist keine externe Tabelle.0 = The table is not an external table.

1 = die Tabelle ist eine externe Tabelle.1 = The table is an external table.
history_retention_periodhistory_retention_period intint Gilt für: Azure SQL-DatenbankAzure SQL Database.Applies to: Azure SQL-DatenbankAzure SQL Database.

Der numerische Wert, der die Dauer der Beibehaltungs Dauer für den temporären Verlauf in Einheiten darstellt, die mit history_retention_period_unit angegeben werdenThe numeric value representing duration of the temporal history retention period in units specified with history_retention_period_unit.
history_retention_period_unithistory_retention_period_unit intint Gilt für: Azure SQL-DatenbankAzure SQL Database.Applies to: Azure SQL-DatenbankAzure SQL Database.

Der numerische Wert, der den Typ der Einheit für die Temporale Verlaufs Beibehaltungs DauerThe numeric value representing type of temporal history retention period unit.

-1: unendlich-1 :INFINITE

3: Tag3: DAY

4: Woche4: WEEK

5: Monat5: MONTH

6: Jahr6: YEAR
history_retention_period_unit_deschistory_retention_period_unit_desc nvarchar (10)nvarchar(10) Gilt für: Azure SQL-DatenbankAzure SQL Database.Applies to: Azure SQL-DatenbankAzure SQL Database.

Die Textbeschreibung des Typs der Einheit für die Beibehaltungs Dauer des temporalen Verlaufs.The text description of type of temporal history retention period unit.

INFINITEINFINITE

DAYDAY

WEEKWEEK

MONTHMONTH

YEARYEAR
is_nodeis_node bitbit Gilt für: SQL Server 2017 (14.x)SQL Server 2017 (14.x) und Azure SQL-DatenbankAzure SQL Database.Applies to: SQL Server 2017 (14.x)SQL Server 2017 (14.x) and Azure SQL-DatenbankAzure SQL Database.

1 = Dies ist eine Diagramm Knoten Tabelle.1 = This is a graph Node table.

0 = Dies ist keine Diagramm Knoten Tabelle.0 = This is not a graph Node table.
is_edgeis_edge bitbit Gilt für: SQL Server 2017 (14.x)SQL Server 2017 (14.x) und Azure SQL-DatenbankAzure SQL Database.Applies to: SQL Server 2017 (14.x)SQL Server 2017 (14.x) and Azure SQL-DatenbankAzure SQL Database.

1 = Dies ist eine Diagramm Kanten Tabelle.1 = This is a graph Edge table.

0 = Dies ist keine Diagramm Kanten Tabelle.0 = This is not a graph Edge table.

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.

BeispieleExamples

Im folgenden Beispiel werden alle Benutzertabellen zurückgegeben, die keinen Primärschlüssel aufweisen.The following example returns all of the user tables that do not have a primary key.

SELECT SCHEMA_NAME(schema_id) AS schema_name  
    ,name AS table_name   
FROM sys.tables   
WHERE OBJECTPROPERTY(object_id,'TableHasPrimaryKey') = 0  
ORDER BY schema_name, table_name;  
GO  
  

Das folgende Beispiel zeigt, wie verwandte Temporale Daten verfügbar gemacht werden können.The following example shows how related temporal data can be exposed.

Gilt für: SQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher und Azure SQL-DatenbankAzure SQL Database.Applies to: SQL Server 2016 (13.x)SQL Server 2016 (13.x) and later and Azure SQL-DatenbankAzure SQL Database.

SELECT T1.object_id, T1.name as TemporalTableName, SCHEMA_NAME(T1.schema_id) AS TemporalTableSchema,  
T2.name as HistoryTableName, SCHEMA_NAME(T2.schema_id) AS HistoryTableSchema,  
T1.temporal_type_desc  
FROM sys.tables T1  
LEFT JOIN sys.tables T2   
ON T1.history_table_id = T2.object_id  
ORDER BY T1.temporal_type desc  

Im folgenden Beispiel wird gezeigt, wie Informationen zur temporalen Verlaufs Aufbewahrung verfügbar gemacht werden können.The following example shows how information on temporal history retention can be exposed.

Gilt für: Azure SQL-DatenbankAzure SQL Database.Applies to: Azure SQL-DatenbankAzure SQL Database.

SELECT DB.is_temporal_history_retention_enabled, SCHEMA_NAME(T1.schema_id) AS TemporalTableSchema, 
T1.name as TemporalTableName, SCHEMA_NAME(T2.schema_id) AS HistoryTableSchema, T2.name as HistoryTableName,
T1.history_retention_period, T1.history_retention_period_unit_desc
FROM sys.tables T1  
OUTER APPLY (select is_temporal_history_retention_enabled from sys.databases where name = DB_NAME()) DB
LEFT JOIN sys.tables T2   
ON T1.history_table_id = T2.object_id WHERE T1.temporal_type = 2 

Weitere InformationenSee Also

Katalogsichten für Objekte (Transact-SQL) Object Catalog Views (Transact-SQL)
Katalogsichten (Transact-SQL) Catalog Views (Transact-SQL)
DBCC CHECKDB (Transact-SQL-) DBCC CHECKDB (Transact-SQL)
DBCC CHECKTABLE (Transact-SQL-) DBCC CHECKTABLE (Transact-SQL)
Abfragen der SQL Server System Katalog-FAQ Querying the SQL Server System Catalog FAQ
In-Memory-OLTP (Arbeitsspeicheroptimierung)In-Memory OLTP (In-Memory Optimization)