sys.sp_article_validation (Transact-SQL)

Platí na:SQL ServerAzureSQL Managed Instance

Iniciuje požadavek na ověření dat pro daný článek. Tato uložená procedura se provádí u Publisher v databázi publikací a u Subscriber v databázi předplatného.

Transact-SQL konvence syntaxe

Syntax

sys.sp_article_validation
    [ @publication = ] N'publication'
    , [ @article = ] N'article'
    [ , [ @rowcount_only = ] rowcount_only ]
    [ , [ @full_or_fast = ] full_or_fast ]
    [ , [ @shutdown_agent = ] shutdown_agent ]
    [ , [ @subscription_level = ] subscription_level ]
    [ , [ @reserved = ] reserved ]
    [ , [ @publisher = ] N'publisher' ]
[ ; ]

Arguments

[ @publication = ] N'publikace'

Název publikace, ve které článek existuje. @publication je sysname, bez výchozího nastavení.

[ @article = ] N'článek'

Název článku pro ověření. @article je sysname, bez výchozího nastavení.

[ @rowcount_only = ] rowcount_only

Specifikuje, zda je vrácen pouze počet řádků pro tabulku. @rowcount_only je smallint, s výchozím nastavením 1.

  • Pokud 0, proveďte počet řádků a kontrolní součet kompatibilní se SQL Server 7.0.
  • Pokud 1, proveďte pouze kontrolu počtu řádků.
  • Pokud 2, provedete počet řádků a binární kontrolní součet.

[ @full_or_fast = ] full_or_fast

Metoda použitá k výpočtu počtu řádků. @full_or_fast je tinyint a může být jednou z těchto hodnot:

Value Description
0 Provádí plný počet pomocí COUNT(*).
1 Provádí rychlý počet z sysindexes.rows. Počítání řádků v sysindexes tabulce je rychlejší než počítání řádků v samotné tabulce. Nicméně se aktualizuje sysindexes líně a počet řádků nemusí být přesný.
2 (výchozí) Provádí podmíněné rychlé počítání nejprve vyzkoušením rychlé metody. Pokud rychlá metoda ukáže rozdíly, vrací se k plné metodě. Pokud expected_rowcount je a NULL uložená procedura se používá k získání hodnoty, vždy se použije plná COUNT(*) procedura.

[ @shutdown_agent = ] shutdown_agent

Specifikuje, zda by se měl distribuční agent ihned po dokončení validace vypnout. @shutdown_agent je bit, s výchozím hodnotou 0.

  • Pokud 0, Distribution Agent se nevypne.
  • Pokud 1, Distribution Agent se po ověření článku vypne.

[ @subscription_level = ] subscription_level

Specifikuje, zda validaci zachytí určitá skupina odběratelů. @subscription_level je bit, s výchozím hodnotou 0.

  • Pokud 0, validace je aplikována na všechny předplatitele.
  • Pokud 1, validace se aplikuje pouze na podmnožinu Subscribers specifikovaných volaními do sp_marksubscriptionvalidation v aktuální otevřené transakci.

[ @reserved = ] vyhrazeno

Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena.

[ @publisher = ] N'publisher'

Specifikuje vydavatele mimo SQL Server. @publisher je sysname s výchozím nastavením NULL.

@publisher by se nemělo používat při žádosti o ověření na SQL Server Publisher.

Hodnoty návratového kódu

0 (úspěch) nebo 1 (selhání).

Remarks

sp_article_validation se používá v transakční replikaci.

sp_article_validation Shromáždí validační informace o daném článku a pošle validační požadavek do transakčního logu. Když Distribution Agent obdrží tento požadavek, Distribution Agent porovná validační informace v požadavku s tabulkou Subscriber. Výsledky validace se zobrazují v Monitoru replikace a v upozorněních SQL Server Agent.

Permissions

Pouze uživatelé s oprávněními ke SELECT ALL zdrojové tabulce pro ověřovaný článek mohou spustit sp_article_validation.