Bagikan melalui


CHANGE_TRACKING_MIN_VALID_VERSION (T-SQL)

Berlaku untuk: SQL ServerAzure SQL Database Azure SQL Managed Instance

Mengembalikan versi minimum pada klien yang valid untuk digunakan dalam mendapatkan informasi pelacakan perubahan dari tabel yang ditentukan, saat Anda menggunakan fungsi CHANGETABLE .

Konvensi sintaks transact-SQL

Sintaks

  
CHANGE_TRACKING_MIN_VALID_VERSION ( table_object_id )  

Argumen

table_object_id
Adalah ID objek tabel. table_object_id adalah int.

Jenis Hasil

bigint

Keterangan

Gunakan fungsi ini untuk memvalidasi nilai parameter last_sync_version untuk CHANGETABLE. Jika last_sync_version kurang dari nilai yang dilaporkan oleh fungsi ini, hasil yang dikembalikan dari panggilan selanjutnya ke CHANGETABLE mungkin tidak valid.

CHANGE_TRACKING_MIN_VALID_VERSION menggunakan informasi berikut untuk menentukan nilai pengembalian:

  • Ketika tabel diaktifkan untuk pelacakan perubahan.

  • Ketika tugas pembersihan latar belakang berjalan untuk menghapus informasi pelacakan perubahan yang lebih lama dari periode retensi yang ditentukan untuk database.

  • Jika tabel dipotong, ini akan menghapus semua informasi pelacakan perubahan yang terkait dengan tabel.

Fungsi mengembalikan NULL jika salah satu kondisi berikut ini benar:

  • Pelacakan perubahan tidak diaktifkan untuk database.

  • ID objek tabel yang ditentukan tidak valid untuk database saat ini.

  • Izin ke tabel yang ditentukan oleh ID objek tidak mencukupi.

Contoh

Contoh berikut menentukan apakah versi yang ditentukan adalah versi yang valid. Contoh memperoleh versi minimum tabel yang dbo.Employees valid, lalu membandingkan ini dengan nilai @last_sync_version variabel. Jika nilai @last_sync_version lebih rendah dari nilai @min_valid_version, daftar baris yang diubah tidak akan valid.

Catatan

Anda biasanya akan mendapatkan nilai dari tabel atau lokasi lain tempat Anda menyimpan nomor versi terakhir yang digunakan untuk menyinkronkan data.

-- The tracked change is tagged with the specified context   
DECLARE @min_valid_version bigint, @last_sync_version bigint;  
  
SET @min_valid_version =   
CHANGE_TRACKING_MIN_VALID_VERSION(OBJECT_ID('dbo.Employees'));  
  
SET @last_sync_version = 11  
IF (@last_sync_version < @min_valid_version)  
-- Error � do not obtain changes  
ELSE  
-- Obtain changes using CHANGETABLE(CHANGES ...)  

Lihat juga

Fungsi Pelacakan Perubahan (Transact-SQL)
sys.change_tracking_tables (T-SQL)