Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: SQL Server 2022 (16.x)
Azure SQL Database
Azure SQL Managed Instance
Weryfikuje rejestr bazy danych i rejestry tabel. Dla każdego wiersza w widoku sys.database_ledger
procedura składowana:
- Ponownie skompiluj wartość przechowywaną w kolumnie previous_block_hash wiersza.
- Sprawdza, czy ponownie skompilowana wartość jest zgodna z wartością przechowywaną obecnie w kolumnie previous_block_hash.
- Jeśli określona lista skrótów zawiera skrót dla bloku rejestru reprezentowanego przez wiersz, sprawdza, czy ponownie skompilowana wartość jest zgodna z skrótem w skrótie.
- Jeśli nazwa tabeli rejestru jest określona przy użyciu argumentu
table_name
, procedura składowana weryfikuje skrót tabeli dla określonej tabeli, jeśli istnieje w kolumnie table_hashessys.database_ledger
. W przeciwnym razie sprawdza wszystkie skróty tabeli istniejące w kolumnie table_hashessys.database_ledger
, z wyjątkiem skrótów tabeli dla nieistnienych (porzuconych) tabel. Podczas weryfikowania skrótu tabeli dla tabeli rejestru procedura składowana:- Skanuje tabelę historii tabeli rejestru, aby ponownie skompilować skrót tabeli, który jest skrótem wszystkich wierszy zaktualizowanych przez transakcję reprezentowaną przez bieżący wiersz w
sys.database_ledger
w tabeli rejestru. - Sprawdza, czy ponownie skompilowany skrót tabeli jest zgodny z wartością przechowywaną w kolumnie table_hashes
sys.database_ledger
dla danej tabeli rejestru.
- Skanuje tabelę historii tabeli rejestru, aby ponownie skompilować skrót tabeli, który jest skrótem wszystkich wierszy zaktualizowanych przez transakcję reprezentowaną przez bieżący wiersz w
Ponadto procedura składowana sprawdza, czy wszystkie indeksy nieklastrowane są zgodne z określoną tabelą rejestru. Jeśli nie określono tabeli rejestru, sprawdza wszystkie indeksy nieklastrowane dla każdej istniejącej tabeli rejestru, do których odwołuje się kolumna table_hashes w dowolnym wierszu sys.database_ledger
.
Aby uzyskać więcej informacji na temat rejestru bazy danych, zobacz Rejestr.
Transact-SQL konwencje składni
Składnia
sp_verify_database_ledger
[ @digests = ] 'digests'
[ , [ @table_name = ] 'table_name' ]
Argumenty
Ważny
Argumenty dla rozszerzonych procedur składowanych należy wprowadzić w określonej kolejności zgodnie z opisem w sekcji składni. Jeśli parametry są wprowadzane poza kolejnością, wystąpi komunikat o błędzie.
[ @digests = ] 'skróty'
Dokument JSON zawierający listę skrótów transakcji, z których każdy został uzyskany przez wykonywanie zapytań w widoku sys.database_ledger_latest_digest
. Dokument JSON musi zawierać co najmniej jeden skrót.
[ @table_name = ] 'table_name'
Nazwa tabeli, którą chcesz zweryfikować.
Zwracanie wartości kodu
0
(powodzenie) lub 1
(niepowodzenie).
Zestaw wyników
Jeden wiersz z jedną kolumną o nazwie last_verified_block_id
.
Uprawnienia
Wymaga uprawnienia WYŚWIETL ZAWARTOŚĆ REJESTRU.
Powiązana zawartość
- weryfikacji bazy danych
- Weryfikowanie tabeli rejestru w celu wykrywania naruszenia
- Omówienie rejestru