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 makalede, bellek için iyileştirilmiş sistem sürümüne sahip bir zamana bağlı tabloyla çalışmanın disk tabanlı sistem sürümüne sahip bir zamansal tabloyla çalışmaktan ne kadar farklı olduğu açıklanır.
Not
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 için iyileştirilmiş sistem sürümüne sahip bir zamana bağlı tablo hakkındaki meta verileri bulmak için, sys.tables ve sys.internal_tablesbilgilerini birleştirmeniz gerekir. Sistem sürümüne sahip bir zamana bağlı tablo, iç bellek içi geçmiş tablosunun parent_object_id olarak sunulur
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 IT
INNER JOIN sys.tables T1
ON IT.parent_object_id = T1.object_id
INNER JOIN sys.tables 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 için iyileştirilmiş zamana bağlı tablolar, yerel olarak derlenmiş saklı yordamlar aracılığıyla değiştirilebilir. Bu sayede zamansal olmayan bellek için iyileştirilmiş tabloları dönüştürebilir ve mevcut yerel olarak depolanan yordamları koruyabilirsiniz.
Bu örnek, daha önce oluşturulan tablonun yerel olarak derlenmiş modülde nasıl değiştirilebileceğ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
GO;
İlgili içerik
- Sistem sürümüne sahip zamana bağlı tablolar ve bellek için optimize edilmiş tablolar
- Bellek açısından optimize edilmiş sistem sürümlü zamana bağlı tablo oluşturma
- Bellek optimizasyonlu sistem sürümlü zamansal tabloları izleme
- Bellek için optimize edilmiş sistem sürümlü zamanlanmış tablo performansı
- Zamana bağlı 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