Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro: SQL Server 2016 (13.x) a novější verze
Azure SQL Managed Instance
Tento článek popisuje, jak se práce s paměťově optimalizovanou systémově verzí časové tabulky liší od práce s diskově verzí časové tabulky systémem verzované.
Note
Dočasné tabulky optimalizované pro paměť jsou k dispozici pouze v SQL Serveru a azure SQL Managed Instance. Tabulky optimalizované pro paměť a dočasné tabulky jsou nezávisle dostupné ve službě Azure SQL Database.
Zjišťování metadat
Pro objevení metadat o paměťově optimalizované systémově verzované časové tabulce kombinujte informace ze sys.tables a sys.internal_tables. Systemově verzovaná časová tabulka se objevuje jako sloupec parent_object_id tabulky historie interní paměti.
Tento příklad ukazuje, jak dotazovat a spojit tyto tabulky.
SELECT SCHEMA_NAME(T1.schema_id) AS TemporalTableSchema,
OBJECT_NAME(IT.parent_object_id) AS TemporalTableName,
T1.object_id AS TemporalTableObjectId,
IT.Name AS InternalHistoryStagingName,
SCHEMA_NAME(T2.schema_id) AS HistoryTableSchema,
OBJECT_NAME(T1.history_table_id) AS HistoryTableName
FROM sys.internal_tables AS IT
INNER JOIN sys.tables AS T1
ON IT.parent_object_id = T1.object_id
INNER JOIN sys.tables AS T2
ON T1.history_table_id = T2.object_id
WHERE T1.is_memory_optimized = 1
AND T1.temporal_type = 2;
Úprava dat
Paměťově optimalizované časové tabulky můžete upravovat pomocí nativně zkompilovaných uložených procedur. Tyto postupy umožňují převést nečasové tabulky optimalizované pro paměť a zároveň zachovat stávající nativně kompilované uložené procedury.
Tento příklad ukazuje, jak upravit existující tabulku v nativně kompilovaném modulu.
CREATE PROCEDURE dbo.UpdateFXCurrencyPair (
@ProviderID INT,
@CurrencyID1 INT,
@CurrencyID2 INT,
@BidRate DECIMAL (8, 4),
@AskRate DECIMAL (8, 4)
)
WITH NATIVE_COMPILATION,
SCHEMABINDING,
EXECUTE AS OWNER
AS
BEGIN ATOMIC
WITH (TRANSACTION ISOLATION LEVEL = SNAPSHOT, LANGUAGE = N'English')
UPDATE dbo.FXCurrencyPairs
SET AskRate = @AskRate,
BidRate = @BidRate
WHERE ProviderID = @ProviderID
AND CurrencyID1 = @CurrencyID1
AND CurrencyID2 = @CurrencyID2;
END;
Související obsah
- Systémově verzované časové tabulky s tabulkami optimalizovanými pro paměť
- Vytvoření paměťově optimalizované systémově verzované časové tabulky
- Monitorování paměťově optimalizovaných systémově verzovaných časových tabulek
- Výkon systémově verzovaných časových tabulek optimalizovaných pro paměť
- temporální tabulky
- Kontroly konzistence systému časových tabulek
- Správa uchovávání historických dat v systémově verzovaných časových tabulkách
- Zobrazení a funkce metadat temporálních tabulek