Megosztás a következőn keresztül:


sys.tables (Transact-SQL)

A következőkre vonatkozik:SQL ServerAzure SQL DatabaseFelügyelt Azure SQL-példányAzure Synapse AnalyticsElemzési platformrendszer (PDW)SQL Analytics-végpont a Microsoft FabricbenRaktár a Microsoft FabricbenSQL-adatbázis a Microsoft Fabricben

Minden SQL Server adatbázis felhasználói táblájához egy sort ad vissza.

Oszlop név Adattípus Description
<inherited columns> A nézet által öröklő oszlopok listájáért lásd sys.objects (Transact-SQL).
lob_data_space_id int A nem nulla érték az adattér azonosítója (fájlcsoport vagy partíciós séma), amely tartalmazza a tábla nagy objektum bináris (LOB) adatait. A LOB adattípusok példái a varbinary(max),varchar(max),földrajz vagy xml.

0 = A táblázatban nincs LOB adat.
filestream_data_space_id int Az adattér azonosítója egy FILESTREAM fájlcsoporthoz vagy egy partíciós sémához, amely FILESTREAM fájlcsoportokból áll.

A FILESTREAM fájlcsoport nevének jelentéséhez hajtsuk végre a lekérdezést SELECT FILEGROUP_NAME (filestream_data_space_id) FROM sys.tables.
sys.tablesCsatlakozhatunk a következő nézetekhez .filestream_data_space_id = data_space_id
- 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 (csatlakozz filegroup_idhozzá)
max_column_id_used int A táblázat által valaha használt maximális oszlopazonosító.
lock_on_bulk_load bit Az asztal nagy terhelésre van zárva. További információért lásd sp_tableoption (Transact-SQL).
uses_ansi_nulls bit A táblát az SET ANSI_NULLS adatbázis opcióval ONhozták létre.
is_replicated bit 1 = A táblázatot snapshot replikációval vagy tranzakciós replikációval publikálják.
has_replication_filter bit 1 = A táblának van replikációs szűrője.
is_merge_published bit 1 = A tábla merge replikációval jelenik meg.
is_sync_tran_subscribed bit 1 = A táblázatot azonnali frissítési előfizetéssel lehet befizetni.
has_unchecked_assembly_data bit 1 = A tábla tartós adatokat tartalmaz, amelyek egy olyan összeállítástól függenek, amelynek definíciója az utolsó ALTER ASSEMBLYidő alatt változott . A következő sikeres vagy DBCC CHECKTABLEa következő sikeres DBCC CHECKDB lépés után nullára lesz.
text_in_row_limit int A maximális bájtok lehetővé tették a szöveg sorban.

0 = Szöveg sorban opció nincs beállítva. További információért lásd sp_tableoption (Transact-SQL).
large_value_types_out_of_row bit 1 = Nagy értékű típusok soron kívül tárolódnak. További információért lásd sp_tableoption (Transact-SQL).
is_tracked_by_cdc bit 1 = A tábla engedélyezve van a változásadatok rögzítésére. További információért lásd sys.sp_cdc_enable_table (Transact-SQL).
lock_escalation tinyint Az opció egy értéke LOCK_ESCALATION a táblázatban:

0 = TABLE
1 = DISABLE
2 = AUTO
lock_escalation_desc nvarchar(60) Szöveges leírás a táblázat lock_escalation opciójáról. A lehetséges értékek a következők: TABLE, AUTOés DISABLE.
is_filetable bit 1 = A Tábla egy FájlTábla.

További információért a FileTables (SQL Server) oldalra olvasható.

A következőkre vonatkozik: SQL Server 2012 (11.x) és újabb verziók, valamint az Azure SQL Database
is_memory_optimized bit Az alábbiakban a lehetséges értékek találhatók:

0 = nem memóriaoptimalizált.
1 = memóriaoptimalizált.

0 érték az alapértelmezett érték.

A memóriaoptimalizált táblák memórián belüli felhasználói táblák, amelyek sémája a lemezen marad, hasonlóan más felhasználói táblákhoz. A memóriaoptimalizált táblák natív módon fordított tárolt eljárásokból érhető el.

A következőkre vonatkozik: AZ SQL Server 2014 (12.x) és újabb verziói, valamint az Azure SQL Database.
durability tinyint Az alábbiakban lehetséges értékek találhatók:

0 = SCHEMA_AND_DATA
1 = SCHEMA_ONLY

Az alapértelmezett érték a .0

Alkalmazható: SQL Server 2014 (12.x) és újabb verziók, valamint Azure SQL Database
durability_desc nvarchar(60) Az alábbiakban a lehetséges értékek találhatók:

SCHEMA_ONLY
SCHEMA_AND_DATA

Az érték SCHEMA_AND_DATA azt jelzi, hogy a tábla tartós, memóriában működő tábla. SCHEMA_AND_DATA az alapértelmezett érték a memóriaoptimalizált tábláknál. Az érték SCHEMA_ONLY azt jelzi, hogy a tábla adatai nem maradnak megmaradva az adatbázis újraindítása után memóriaoptimalizált objektumokkal.

Alkalmazható: SQL Server 2014 (12.x) és újabb verziók, valamint Azure SQL Database
temporal_type tinyint A táblázat típusát jelölő numerikus érték:

0 = NON_TEMPORAL_TABLE
1 = HISTORY_TABLE (időbeli tábla társítja)
2 = SYSTEM_VERSIONED_TEMPORAL_TABLE

Alkalmazható: SQL Server 2016 (13.x) és újabb verziók, valamint Azure SQL Database
temporal_type_desc nvarchar(60) A tábla típusának szövegleírása:

NON_TEMPORAL_TABLE
HISTORY_TABLE
SYSTEM_VERSIONED_TEMPORAL_TABLE

Alkalmazható: SQL Server 2016 (13.x) és újabb verziók, valamint Azure SQL Database
history_table_id int Amikor temporal_type vagy 2ledger_type az 2, akkor az a tábla visszaadja, object_id amely egy időbeli tábla történelmi adatait tartja meg, egyébként .NULL

Alkalmazható: SQL Server 2016 (13.x) és újabb verziók, valamint Azure SQL Database
is_remote_data_archive_enabled bit Jelzi, hogy a tábla Stretch-engedélyezett-e.

0 = A tábla nincs Stretch-engedélyezett.
1 = A tábla Stretch-engedélyezett.

További információért lásd a Stretch Database-t.

Alkalmazható: SQL Server 2016 (13.x) és újabb verziók, valamint Azure SQL Database
is_external bit Jelzi, hogy a tábla külső tábla.

0 = A tábla nem külső tábla.
1 = A tábla külső tábla.

Alkalmazható: SQL Server 2016 (13.x) és újabb verziók, Azure SQL Database és Azure Synapse Analytics
history_retention_period int A numerikus érték, amely az időbeli történeti megtartási időszak időtartamát jelöli egységekben, amelyeket a .history_retention_period_unit

Az: SQL Server 2017 (14.x) és újabb verziók, valamint az Azure SQL Database
history_retention_period_unit int A numerikus érték, amely az időtörténet megtartási időszakának típusát jelöli.

-1: INFINITE
0: SECOND
1: MINUTE
2: HOUR
3: DAY
4: WEEK
5: MONTH
6: YEAR

Az: SQL Server 2017 (14.x) és újabb verziók, valamint az Azure SQL Database
history_retention_period_unit_desc nvarchar(10) Az időtörténet megtartási időszak típusának szövegleírása.

INFINITE
SECOND
MINUTE
HOUR
DAY
WEEK
MONTH
YEAR

Az: SQL Server 2017 (14.x) és újabb verziók, valamint az Azure SQL Database
is_node bit 1 = Grafon csomópont táblázat.
0 = Nem gráfcsomópont tábla.

Az: SQL Server 2017 (14.x) és újabb verziók, valamint az Azure SQL Database
is_edge bit 1 = Grafon éltáblázat.
0 = Nem gráf éltáblázat.

Az: SQL Server 2017 (14.x) és újabb verziók, valamint az Azure SQL Database
data_retention_period int Az adatmegőrzési időszak időtartamát jelölő numerikus érték, amely egységekben jelöli, amely .data_retention_period_unit

Apply to: Azure SQL Edge only
data_retention_period_unit int A numerikus érték, amely az adatmegőrzési időszak egységének típusát jelöli.

-1: INFINITE
0: SECOND
1: MINUTE
2: HOUR
3: DAY
4: WEEK
5: MONTH
6: YEAR

Apply to: Azure SQL Edge only
data_retention_period_unit_desc nvarchar(10) Az adatmegőrzési időszak típusának szöveges leírása.

INFINITE
SECOND
MINUTE
HOUR
DAY
WEEK
MONTH
YEAR

Apply to: Azure SQL Edge only
ledger_type tinyint A numerikus érték azt jelzi, hogy a tábla egy főkönyvi táblá-e.

0 = NON_LEDGER_TABLE
1 = HISTORY_TABLE (frissíthető főcímlet táblához kapcsolódik)
2 = UPDATABLE_LEDGER_TABLE
3 = APPEND_ONLY_LEDGER_TABLE

Az adatbázis-főkönyvről további információt a Ledgerben talál.

A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziók, valamint az Azure SQL Database
ledger_type_desc nvarchar(60) Az oszlopban található érték ledger_type szövegleírása:

NON_LEDGER_TABLE
HISTORY_TABLE
UPDATABLE_LEDGER_TABLE
APPEND_ONLY_LEDGER_TABLE

A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziók, valamint az Azure SQL Database
ledger_view_id int Amikor ledger_type IN (2, 3) a ledger nézet visszatérobject_id, egyébként .NULL

A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziók, valamint az Azure SQL Database
is_dropped_ledger_table bit Egy ledger táblát jelöl, amit eldobtak.

A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziók, valamint az Azure SQL Database

Permissions

A katalógusnézetekben a metaadatok láthatósága olyan biztonságos adatokra korlátozódik, amelyek egy felhasználó tulajdonában vannak, vagy amelyeken a felhasználó engedélyt kapott. További információ: Metaadatok láthatóságának konfigurációja.

Példák

A. Minden felhasználói táblát visszaadjunk elsődleges kulcs nélkül

A következő példa visszaadja az összes felhasználói táblát, amelyeknek nincs elsődleges kulcsa.

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

A következő példa bemutatja, hogyan lehet kapcsolódó időbeli adatok feltárni.

A következőkre vonatkozik: AZ SQL Server 2016 (13.x) és újabb verziói, valamint az Azure 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;

C. Lista információk az időbeli előzmények megtartásáról

A következő példa bemutatja, hogyan lehet az időbeli előzmények megtartásáról szóló információk feltárulni.

A következőkre vonatkozik: AZ SQL Server 2017 (14.x) és újabb verziói, valamint az Azure 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;