Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: SQL Server 2016 (13.x) ve sonraki sürümleri
Azure SQL Yönetilen Örnek
Bu makale, bellek optimize edilmiş sistem versiyonlu zamansal tabloyla çalışmanın, disk tabanlı sistem versiyonlu zamansal tabloyla çalışmanın nasıl farklı olduğunu açıklar.
Uyarı
Bellek optimize edilmiş zamansal tablolar yalnızca SQL Server ve Azure SQL Yönetilen Örnek'te kullanılabilir. Bellek için iyileştirilmiş tablolar ve zamana bağlı tablolar Azure SQL Veritabanı'nda bağımsız olarak kullanılabilir.
Meta verileri bulma
Bellek optimize edilmiş sistem versiyonlu zamansal tablo hakkında meta verileri keşfetmek için sys.tables ve sys.internal_tables verilerini birleştirin. Sistem sürümünde bir zamansal tablo, dahili bellek geçmişi tablosunun sütunu olarak görünür parent_object_id .
Bu örnekte bu tabloları sorgulama ve birleştirme adımları gösterilmektedir.
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;
Verileri değiştirme
Bellek optimize edilmiş zaman tablolarını yerel olarak derlenmiş depolanmış prosedürler aracılığıyla değiştirebilirsiniz. Bu prosedürler, zamansal olmayan bellek optimize edilmiş tabloları dönüştürmenizi ve mevcut yerel olarak saklanan prosedürleri korumanızı sağlar.
Bu örnek, yerel derlenmiş bir modülde mevcut bir tablonun nasıl değiştirileceğini gösterir.
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;
İlgili içerik
- Bellek için optimize edilmiş tablolarla sistem sürümlemesi yapılmış zamansal tablolar
- Bellek için optimize edilmiş sistem sürümlü zaman tabanlı tablo oluşturma
- Bellek için optimize edilmiş sistem sürümlü geçici tabloları izleme
- Bellek için optimize edilmiş sistem sürümlü zamansal tablo performansı
- Zamansal tablolar
- Zamansal tablo sistemi tutarlılık denetimleri
- Sistem sürümündeki zamana bağlı tablolarda geçmiş verileri saklamayı yönetme
- Zamansal tablo meta veri görünümleri ve işlevleri