Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro: SQL Server 2022 (16.x) a novější verze
Azure SQL Database
Azure SQL Managed Instance
Tabulky registru jen pro připojení umožňují provádět pouze INSERT operace s tabulkami, které zajišťují, aby privilegovaní uživatelé, jako jsou správci databáze, nemohli měnit data prostřednictvím tradičních operací jazyka pro manipulaci s daty . Tabulky registru jen pro připojení jsou ideální pro systémy, které neaktualizují nebo odstraňují záznamy, jako jsou systémy událostí zabezpečení a systémy pro správu nebo blockchainové systémy, kde je potřeba replikovat data z blockchainu do databáze. Vzhledem k tomu, že tabulka typu append-only neobsahuje žádné UPDATE operace nebo DELETE operace, není nutné, aby odpovídající tabulka historie byla k dispozici s aktualizovatelnými tabulkami registru.
Tabulku registru jen pro připojení můžete vytvořit zadáním argumentu LEDGER = ON v příkazu CREATE TABLE (Transact-SQL) a zadáním APPEND_ONLY = ON možnosti.
Důležité
Jakmile se tabulka vytvoří jako tabulka registru, nedá se vrátit k tabulce, která nemá funkce registru. V důsledku toho útočník nemůže dočasně odebrat možnosti registru, provést změny v tabulce a pak znovu použít funkci registru.
Schéma tabulky pouze pro přidávání záznamů
Tabulka pouze pro přidávání musí obsahovat následující sloupce GENERATED ALWAYS, které obsahují metadata, kterých transakce provedly změny v tabulce a pořadí operací, jimiž transakce aktualizovala řádky. Když vytvoříte ledgerovou tabulku pouze pro připojení, ve vaší tabulce registru se vytvoří sloupce GENERATED ALWAYS. Tato data jsou užitečná pro forenzní účely při pochopení toho, jak byla data vložena v průběhu času.
Pokud v příkazu GENERATED ALWAYS nezadáte definice sloupců, systém je automaticky přidá pomocí následujících výchozích názvů.
| Výchozí název sloupce | Datový typ | Description |
|---|---|---|
| ledger_start_transaction_id | bigint | ID transakce, která vytvořila verzi řádku |
| pořadové číslo počátku účetní knihy (ledger_start_sequence_number) | bigint | Pořadové číslo operace, která v rámci transakce vytvořila verzi řádku. |
Zobrazení hlavní knihy
Pro každou tabulku knihy záznamů, která se pouze připojuje, systém automaticky vygeneruje zobrazení, které se nazývá zobrazení knihy záznamů. Zobrazení registru hlásí všechny vložené řádky, ke kterým došlo v tabulce. Zobrazení registru je primárně užitečné pro aktualizovatelné tabulky registru, nikoli pro tabulky registru pouze s příponami, protože tabulky registru pouze s příponami nemají žádné UPDATE ani DELETE možnosti. Zobrazení registru pro tabulky registru jen pro připojení je k dispozici pro konzistenci mezi aktualizovatelnými i přidávanými tabulkami registru.
Schéma zobrazení registru
Poznámka:
Názvy sloupců zobrazení registru lze přizpůsobit při vytváření tabulky pomocí <ledger_view_option> parametru s příkazem CREATE TABLE (Transact-SQL). Další informace naleznete v tématu možnosti zobrazení registru a odpovídající příklady v CREATE TABLE (Transact-SQL).
| Výchozí název sloupce | Datový typ | Description |
|---|---|---|
| ledger_transaction_id | bigint | ID transakce, která vytvořila nebo odstranila verzi řádky. |
| číslo posloupnosti hlavní knihy | bigint | Pořadové číslo operace na úrovni řádku v rámci transakce v tabulce. |
| typ_operace_v_knihách | tinyint | Obsahuje 1 (INSERT) nebo 2 (DELETE). Vložení řádku do tabulky účetní knihy vytvoří nový řádek v zobrazení účetní knihy, který obsahuje 1 v tomto sloupci. Odstranění řádku z tabulky registru vytvoří nový řádek v zobrazení registru, který obsahuje v tomto sloupci 2. Aktualizace řádku v tabulce registru vytvoří v zobrazení registru dva nové řádky. Jeden řádek obsahuje 2 (DELETE) a druhý řádek obsahuje 1 (INSERT) v tomto sloupci. Příkaz DELETE by neměl být proveden v tabulce účetní knihy pouze pro připojování. |
| popis_typu_operace_v_knize | nvarchar(128) | Obsahuje INSERT nebo DELETE. Další informace najdete v předchozím řádku. |