sys.sp_verify_database_ledger (Transact-SQL)
Berlaku untuk: SQL Server 2022 (16.x) Azure SQL DatabaseAzure SQL Managed Instance
Memverifikasi ledger database dan ledger tabel. Untuk setiap baris dalam sys.database_ledger
tampilan, prosedur tersimpan:
- Komputasi ulang nilai yang disimpan di kolom previous_block_hash baris.
- Memeriksa apakah nilai yang dikomputasi ulang cocok dengan nilai yang saat ini disimpan di kolom previous_block_hash.
- Jika daftar hash yang ditentukan berisi hash untuk blok ledger yang diwakili baris, itu memverifikasi nilai yang dikomputasi ulang cocok dengan hash dalam hash.
- Jika nama tabel ledger ditentukan menggunakan
table_name
argumen , prosedur tersimpansys.database_ledger
memverifikasi hash tabel untuk tabel yang ditentukan, jika ada di kolom table_hashes . Jika tidak, ia memverifikasi semua hash tabel yang ada di kolomsys.database_ledger
table_hashes , kecuali hash tabel untuk tabel yang tidak ada (dijatuhkan). Saat memverifikasi hash tabel untuk tabel ledger, prosedur tersimpan:- Memindai tabel riwayat tabel ledger untuk mengolah ulang hash tabel, yang merupakan hash dari semua baris yang diperbarui oleh transaksi yang diwakili oleh baris saat ini dalam
sys.database_ledger
tabel ledger. - Memeriksa apakah hash tabel yang dikomputasi ulang cocok dengan nilai yang disimpan di kolom
sys.database_ledger
table_hashes untuk tabel ledger yang diberikan.
- Memindai tabel riwayat tabel ledger untuk mengolah ulang hash tabel, yang merupakan hash dari semua baris yang diperbarui oleh transaksi yang diwakili oleh baris saat ini dalam
Selain itu, prosedur tersimpan memverifikasi semua indeks non-kluster konsisten dengan tabel ledger yang ditentukan. Jika tidak ada tabel ledger yang ditentukan, tabel tersebut memverifikasi semua indeks non-kluster untuk setiap tabel ledger yang ada yang direferensikan dalam kolom table_hashes di baris mana pun dari sys.database_ledger
.
Untuk informasi selengkapnya tentang ledger database, lihat Ledger.
Sintaks
sp_verify_database_ledger
[ @digests = ] 'digests'
[ , [ @table_name = ] 'table_name' ]
Argumen
[ @digests = ] 'hash'
Dokumen JSON yang berisi daftar hash transaksi, yang masing-masing telah diperoleh dengan mengkueri sys.database_ledger_latest_digest
tampilan. Dokumen JSON harus berisi setidaknya satu hash.
[ @table_name = ] 'table_name'
Nama tabel yang ingin Anda verifikasi.
Mengembalikan nilai kode
0
(berhasil) atau 1
(kegagalan).
Tataan hasil
Satu baris, dengan satu kolom disebut last_verified_block_id
.
Izin
Memerlukan izin TAMPILKAN KONTEN LEDGER.
Konten terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk