Freigeben über


sys.tables (Transact-SQL)

Gibt eine Zeile für jede Benutzertabelle in SQL Server zurück.

Gilt für: SQL Server (SQL Server 2008 bis aktuelle Version), Windows Azure SQL-Datenbank (Ursprüngliche Version bis aktuelle Version).

Spaltenname

Datentyp

Beschreibung

<inherited columns>

 

Eine Liste der Spalten, die diese Sicht erbt, finden Sie unter sys.objects (Transact-SQL).

lob_data_space_id

int

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. Beispiele für LOB-Datentypen: varbinary(max), varchar(max), geography oder xml.

0 = Die Tabelle enthält keine LOB-Daten.

filestream_data_space_id

int

Die ID des Datenbereichs für eine FILESTREAM-Dateigruppe oder ein Partitionsschema, das aus FILESTREAM-Dateigruppen besteht.

Um den Namen einer FILESTREAM-Dateigruppe auszugeben, führen Sie die Abfrage SELECT FILEGROUP_NAME (filestream_data_space_id) FROM sys.tables aus.

sys.tables kann mit den folgenden Sichten in filestream_data_space_id = data_space_id verknüpft werden.

  • sys.filegroups

  • sys.partition_schemes

  • sys.indexes

  • sys.allocation_units

  • sys.fulltext_catalogs

  • sys.data_spaces

  • sys.destination_data_spaces

  • sys.master_files

  • sys.database_files

  • backupfilegroup (Join über filegroup_id)

max_column_id_used

int

Höchste Spalten-ID, die von dieser Tabelle je verwendet wurde

lock_on_bulk_load

bit

Die Tabelle wird bei Massenladevorgängen gesperrt. Weitere Informationen finden Sie unter sp_tableoption (Transact-SQL).

uses_ansi_nulls

bit

Beim Erstellen der Tabelle war die Datenbankoption SET ANSI_NULLS auf ON festgelegt.

is_replicated

bit

1 = Die Tabelle wird mithilfe der Momentaufnahme- oder der Transaktionsreplikation veröffentlicht.

has_replication_filter

bit

1 = Die Tabelle hat einen Replikationsfilter.

is_merge_published

bit

1 = Die Tabelle wird mithilfe der Mergereplikation veröffentlicht.

is_sync_tran_subscribed

bit

1 = Die Tabelle wird mithilfe eines Abonnements mit sofortigem Update abonniert.

has_unchecked_assembly_data

bit

1 = Die Tabelle enthält persistente Daten, die von einer Assembly abhängen, deren Definition bei der letzten ALTER ASSEMBLY-Anweisung geändert wurde. Der Wert wird nach der nächsten erfolgreichen Ausführung von DBCC CHECKDB oder DBCC CHECKTABLE auf 0 zurückgesetzt.

text_in_row_limit

int

Die zulässige Höchstzahl der Bytes für Text in Zeilen.

0 = Die Option text in row ist nicht festgelegt. Weitere Informationen finden Sie unter sp_tableoption (Transact-SQL).

large_value_types_out_of_row

bit

1 = Umfangreiche Werttypen werden außerhalb der Zeile gespeichert. Weitere Informationen finden Sie unter sp_tableoption (Transact-SQL).

is_tracked_by_cdc

bit

1 = Tabelle wird für Change Data Capture aktiviert. Weitere Informationen finden Sie unter sys.sp_cdc_enable_table (Transact-SQL).

lock_escalation

tinyint

Der Wert der LOCK_ESCALATION-Option für die Tabelle:

0 = TABLE

1 = DISABLE

2 = AUTO

lock_escalation_desc

nvarchar(60)

Eine Textbeschreibung der lock_escalation-Option für die Tabelle. Mögliche Werte sind TABLE, AUTO und DISABLE.

is_filetable

bit

1 = Tabelle ist eine FileTable.

Weitere Informationen über FileTables finden Sie unter FileTables (SQL Server).

Gilt für: SQL Server 2012 bis SQL Server 2014.

durability

tinyint

Folgende Werte sind möglich:

0 = SCHEMA_AND_DATA

1 = SCHEMA_ONLY

0 ist der Standardwert.

Gilt für: SQL Server 2014 bis SQL Server 2014.

durability_desc

nvarchar(60)

Folgende Werte sind möglich:

SCHEMA_AND_DATA

SCHEMA_ONLY

Der Wert von SCHEMA_AND_DATA gibt an, dass die Tabelle eine dauerhafte speicherinterne Tabelle ist. SCHEMA_AND_DATA ist der Standardwert für speicheroptimierte Tabellen. Der Wert von SCHEMA_ONLY gibt an, dass die Tabellendaten nicht nach dem Neustart der Datenbank mit speicheroptimierten Objekten beibehalten werden.

Gilt für: SQL Server 2014 bis SQL Server 2014.

is_memory_optimized

bit

Folgende Werte sind möglich:

0 = nicht speicheroptimiert.

1 = ist speicheroptimiert.

Der Standardwert ist 0.

Speicheroptimierte Tabellen sind im Arbeitsspeicher vorgehaltene Benutzertabellen, deren Schema auf dem Datenträger ähnlich anderen Benutzertabellen beibehalten wird. Auf speicheroptimierte Tabellen kann von systemintern kompilierten gespeicherten Prozeduren zugegriffen werden.

Gilt für: SQL Server 2014 bis SQL Server 2014.

Berechtigungen

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. Weitere Informationen finden Sie unter Konfigurieren der Sichtbarkeit von Metadaten.

Beispiele

Im folgenden Beispiel werden alle Benutzertabellen zurückgegeben, die keinen Primärschlüssel aufweisen.

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

Siehe auch

Verweis

Katalogsichten für Objekte (Transact-SQL)

Katalogsichten (Transact-SQL)

DBCC CHECKDB (Transact-SQL)

DBCC CHECKTABLE (Transact-SQL)

Konzepte

FAQ: Abfragen des SQL Server-Systemkatalogs

In-Memory OLTP (Arbeitsspeicheroptimierung)