Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Punkt końcowy analizy SQL w usłudze Microsoft Fabric
Hurtownia danych w usłudze Microsoft Fabric
Baza danych SQL w usłudze Microsoft Fabric
Zwraca wiersz dla każdej tablicy użytkownika w bazie SQL Server.
| Nazwa kolumny | Typ danych | Description |
|---|---|---|
<inherited columns> |
Aby uzyskać listę kolumn dziedziczy ten widok, zobacz sys.objects (Transact-SQL). | |
lob_data_space_id |
int | Niezerowa wartość to identyfikator przestrzeni danych (grupy plików lub schematu partycji), która zawiera duże dane binarne obiektu (LOB) dla tej tabeli. Przykładami typów danych LOB są varbinary(max),varchar(max),geography lub xml. 0 = Tabela nie zawiera danych LOB. |
filestream_data_space_id |
int | Identyfikator przestrzeni danych dla grupy plików FILESTREAM lub schematu partycji składającego się z grup plików FILESTREAM. Aby zgłosić nazwę grupy plików FILESTREAM, wykonaj zapytanie SELECT FILEGROUP_NAME (filestream_data_space_id) FROM sys.tables.sys.tablesmożna połączyć z następującymi poglądami na .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(dołącz )filegroup_id |
max_column_id_used |
int | Maksymalny identyfikator kolumny użyty kiedykolwiek przez tę tabelę. |
lock_on_bulk_load |
bit | Stół jest zablokowany na ładunek zbiorczy. Więcej informacji można znaleźć w sp_tableoption (Transact-SQL). |
uses_ansi_nulls |
bit | Tabela została utworzona z opcją ONbazy SET ANSI_NULLS danych. |
is_replicated |
bit | 1 = Tabela publikowana jest za pomocą replikacji migawkowej lub replikacji transakcyjnej. |
has_replication_filter |
bit | 1 = Tabela posiada filtr replikacyjny. |
is_merge_published |
bit | 1 = Tabela publikowana jest za pomocą replikacji scalania. |
is_sync_tran_subscribed |
bit | 1 = Tabela jest subskrybowana za pomocą subskrypcji z natychmiastową aktualizacją. |
has_unchecked_assembly_data |
bit | 1 = Tabela zawiera dane trwałe zależne od zespołu, którego definicja zmieniła się podczas ostatniego ALTER ASSEMBLY. Zostanie zresetowany do 0 po następnym udanym DBCC CHECKDB lub DBCC CHECKTABLE. |
text_in_row_limit |
int | Maksymalna liczba bajtów dozwolona na tekst w rzędzie. 0 = Opcja tekstu w wierszu nie jest ustawiona. Więcej informacji można znaleźć w sp_tableoption (Transact-SQL). |
large_value_types_out_of_row |
bit | 1 = Duże typy wartości są przechowywane poza wierszem. Więcej informacji można znaleźć w sp_tableoption (Transact-SQL). |
is_tracked_by_cdc |
bit | 1 = Tabela jest włączona do przechwytywania danych zmian. Więcej informacji można znaleźć w sys.sp_cdc_enable_table (Transact-SQL). |
lock_escalation |
tinyint | Wartość LOCK_ESCALATION opcji dla tabeli:0 = TABLE1 = DISABLE2 = AUTO |
lock_escalation_desc |
nvarchar(60) | Tekstowy opis opcji lock_escalation dla stołu. Możliwe wartości to: TABLE, AUTO, i DISABLE. |
is_filetable |
bit | 1 = Tabela to Tabela Plików. Więcej informacji o FileTables można znaleźć w artykule FileTables (SQL Server). Dotyczy: SQL Server 2012 (11.x) i nowsze wersje oraz Azure SQL Database |
is_memory_optimized |
bit | Poniżej przedstawiono możliwe wartości: 0 = nie zoptymalizowana pod względem pamięci. 1 = jest zoptymalizowana pod względem pamięci. Wartość 0 jest wartością domyślną. Tablice zoptymalizowane pod pamięć to tabele użytkownika działające w pamięci, których schemat jest przechowywany na dysku podobnie jak w innych tabelach użytkownika. Tabele zoptymalizowane pod pamięć mogą być dostępne z natywnie skompilowanych procedur przechowywanych. Dotyczy: SQL Server 2014 (12.x) i nowsze wersje oraz Azure SQL Database. |
durability |
tinyint | Poniżej przedstawiono możliwe wartości: 0 = SCHEMA_AND_DATA1 = SCHEMA_ONLYWartość domyślna 0 jest wartością domyślną.Dotyczy do: SQL Server 2014 (12.x) i nowszych wersji oraz Azure SQL Database |
durability_desc |
nvarchar(60) | Poniżej przedstawiono możliwe wartości:SCHEMA_ONLYSCHEMA_AND_DATAWartość oznacza SCHEMA_AND_DATA , że tabela jest trwałą tabelą w pamięci.
SCHEMA_AND_DATA jest domyślną wartością dla tablic zoptymalizowanych pod pamięć. Wartość oznacza SCHEMA_ONLY , że dane tabeli nie są utrwalane po ponownym uruchomieniu bazy danych z obiektami zoptymalizowanymi pod pamięć.Dotyczy do: SQL Server 2014 (12.x) i nowszych wersji oraz Azure SQL Database |
temporal_type |
tinyint | Wartość liczbowa reprezentująca typ tabeli: 0 = NON_TEMPORAL_TABLE1 = HISTORY_TABLE (powiązane z tabelą czasową)2 = SYSTEM_VERSIONED_TEMPORAL_TABLEDotyczy do: SQL Server 2016 (13.x) i nowszych wersji oraz Azure SQL Database |
temporal_type_desc |
nvarchar(60) | Opis tekstowy typu stołu:NON_TEMPORAL_TABLEHISTORY_TABLESYSTEM_VERSIONED_TEMPORAL_TABLEDotyczy do: SQL Server 2016 (13.x) i nowszych wersji oraz Azure SQL Database |
history_table_id |
int | Gdy temporal_type jest lub 2ledger_type jest 2, zwraca object_id tabelę utrzymującą dane historyczne dla tabeli czasowej, w przeciwnym razie zwraca NULL.Dotyczy do: SQL Server 2016 (13.x) i nowszych wersji oraz Azure SQL Database |
is_remote_data_archive_enabled |
bit | Wskazuje, czy tabela jest włączona do rozciągania. 0 = Tabela nie jest obsługiwana przez Stretch. 1 = Tabela jest obsługiwana przez Stretch. Więcej informacji znajdziesz w Stretch Database. Dotyczy do: SQL Server 2016 (13.x) i nowszych wersji oraz Azure SQL Database |
is_external |
bit | Wskazuje, że tabela jest zewnętrzną tabelą. 0 = Tabela nie jest tabelą zewnętrzną. 1 = Tabela jest tabelą zewnętrzną. Dotyczy do: SQL Server 2016 (13.x) i późniejszych wersji, Azure SQL Database oraz Azure Synapse Analytics |
history_retention_period |
int | Wartość liczbowa reprezentująca czas trwania okresu zachowania historii czasowej w jednostkach określonych z .history_retention_period_unitDotyczy: SQL Server 2017 (14.x) i nowsze wersje oraz Azure SQL Database |
history_retention_period_unit |
int | Wartość liczbowa reprezentuje typ jednostki okresu retencji historii czasowej. -1: INFINITE0: SECOND1: MINUTE2: HOUR3: DAY4: WEEK5: MONTH6: YEARDotyczy: SQL Server 2017 (14.x) i nowsze wersje oraz Azure SQL Database |
history_retention_period_unit_desc |
nvarchar(10) | Opis tekstu typu jednostki okresu zachowania historii czasowej.INFINITESECONDMINUTEHOURDAYWEEKMONTHYEARDotyczy: SQL Server 2017 (14.x) i nowsze wersje oraz Azure SQL Database |
is_node |
bit | 1 = Tabela węzłów grafu. 0 = Nie jest to tabela węzłów grafu. Dotyczy: SQL Server 2017 (14.x) i nowsze wersje oraz Azure SQL Database |
is_edge |
bit | 1 = Tabela krawędzi grafu. 0 = Nie jest to tabela krawędzi grafu. Dotyczy: SQL Server 2017 (14.x) i nowsze wersje oraz Azure SQL Database |
data_retention_period |
int | Wartość numeryczna reprezentująca czas trwania okresu przechowywania danych w jednostkach określonych za .data_retention_period_unitDotyczy to: Azure SQL Edge tylko |
data_retention_period_unit |
int | Wartość numeryczna reprezentuje typ jednostki okresu przechowywania danych. -1: INFINITE0: SECOND1: MINUTE2: HOUR3: DAY4: WEEK5: MONTH6: YEARDotyczy to: Azure SQL Edge tylko |
data_retention_period_unit_desc |
nvarchar(10) | Opis tekstowy typu jednostki okresu przechowywania danych.INFINITESECONDMINUTEHOURDAYWEEKMONTHYEARDotyczy to: Azure SQL Edge tylko |
ledger_type |
tinyint | Wartość numeryczna wskazuje, czy tabela jest tabelą księgową. 0 = NON_LEDGER_TABLE1 = HISTORY_TABLE (powiązane z aktualizowalną tabelą księgową)2 = UPDATABLE_LEDGER_TABLE3 = APPEND_ONLY_LEDGER_TABLEAby uzyskać więcej informacji na temat rejestru bazy danych, zobacz Rejestr. Dotyczy: SQL Server 2022 (16.x) i nowsze wersje oraz Azure SQL Database |
ledger_type_desc |
nvarchar(60) | Tekstowy opis wartości w kolumnie ledger_type :NON_LEDGER_TABLEHISTORY_TABLEUPDATABLE_LEDGER_TABLEAPPEND_ONLY_LEDGER_TABLEDotyczy: SQL Server 2022 (16.x) i nowsze wersje oraz Azure SQL Database |
ledger_view_id |
int | Gdy ledger_type IN (2, 3) zwraca object_id widok księgi rachunkowej, w przeciwnym razie zwraca NULL.Dotyczy: SQL Server 2022 (16.x) i nowsze wersje oraz Azure SQL Database |
is_dropped_ledger_table |
bit | Wskazuje na tabelę księgową, która została upuszczona. Dotyczy: SQL Server 2022 (16.x) i nowsze wersje oraz Azure SQL Database |
Permissions
Widoczność metadanych w widokach katalogu jest ograniczona do obiektów, których właścicielem jest użytkownik lub w stosunku do których użytkownik ma jakieś uprawnienia. Aby uzyskać więcej informacji, zobacz Konfiguracja widoczności metadanych.
Przykłady
A. Zwracaj wszystkie tabele użytkownika bez klucza głównego
Poniższy przykład zwraca wszystkie tabele użytkownika, które nie mają klucza głównego.
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
B. Lista tabel powiązanych z danymi czasowymi
Poniższy przykład pokazuje, jak można ujawnić powiązane dane czasowe.
Dotyczy: SQL Server 2016 (13.x) i nowsze wersje oraz 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. Informacje z listy dotyczące zachowania historii czasowej
Poniższy przykład pokazuje, jak można ujawnić informacje o zachowaniu historii czasowej.
Dotyczy: SQL Server 2017 (14.x) i nowsze wersje oraz 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;