Aracılığıyla paylaş


sys.sp_verify_database_ledger (Transact-SQL)

Şunlar için geçerlidir: SQL Server 2022 (16.x) ve sonraki sürümleri Azure SQL VeritabanıAzure SQL Yönetilen Örneği

Veritabanı kayıt defterini ve tablo defterlerini doğrular. sys.database_ledger görünümündeki her satır için saklı yordam:

  1. Satırın previous_block_hash sütununda depolanan bir değeri yeniden derler.
  2. Yeniden hesaplanmış değerin şu anda previous_block_hash sütununda depolanan değerle eşleşip eşleşmediğini denetler.
  3. Belirtilen özet listesi, satırın temsil ettiği genel muhasebe bloğu için bir özet içeriyorsa, yeniden derlenen değerin özetteki karmayla eşleşip eşleşmediğini doğrular.
  4. table_name bağımsız değişkeni kullanılarak bir kayıt defteri tablosu adı belirtilirse, saklı yordam belirtilen tablo için sys.database_ledgertable_hashes sütununda varsa tablo karması doğrular. Aksi takdirde, var olmayan (bırakılan) tabloların tablo karmaları dışında sys.database_ledgertable_hashes sütununda var olan tüm tablo karmalarını doğrular. Kayıt defteri tablosu için tablo karması doğrularken saklı yordam:
    1. Kayıt defteri tablosundaki sys.database_ledger geçerli satırın temsil ettiği hareket tarafından güncelleştirilen tüm satırların karması olan tablo karması için kayıt defteri tablosunun geçmiş tablosunu tarar.
    2. Yeniden derlenen tablo karması, verilen kayıt defteri tablosu için sys.database_ledger table_hashes sütununda depolanan değerle eşleşip eşleşmediğini denetler.

Ayrıca saklı yordam, tüm kümelenmemiş dizinlerin belirtilen kayıt defteri tablosuyla tutarlı olduğunu doğrular. Hiçbir kayıt defteri tablosu belirtilmezse, sys.database_ledgerherhangi bir satırındaki table_hashes sütununda başvurulan mevcut her kayıt defteri tablosu için tüm kümelenmemiş dizinleri doğrular.

Veritabanı kayıt defteri hakkında daha fazla bilgi için bkz. Ledger.

Transact-SQL söz dizimi kuralları

Sözdizimi

sp_verify_database_ledger
    [ @digests = ] 'digests'
    [ , [ @table_name = ] 'table_name' ]

Bağımsız değişken

Önemli

Genişletilmiş saklı yordamlar için bağımsız değişkenler, Sözdizimi bölümünde açıklandığı gibi belirli bir sırada girilmelidir. Parametreler sıra dışı girilirse bir hata iletisi oluşur.

[ @digests = ] 'özetler '

İşlem özetlerinin listesini içeren ve her biri sys.database_ledger_latest_digest görünümü sorgulanarak elde edilen bir JSON belgesi. JSON belgesi en az bir özet içermelidir.

[ @table_name = ] 'table_name'

Doğrulamak istediğiniz tablonun adı.

Dönüş kodu değerleri

0 (başarı) veya 1 (başarısızlık).

Sonuç kümesi

last_verified_block_idadlı bir sütun içeren bir satır.

İzinler

GENEL MUHASEBE İçERİĞİ görüntüleme izni gerektirir.