sp_article_validation (Transact-SQL)

Si applica a:SQL ServerIstanza gestita di SQL di Azure

Inizializza una richiesta di convalida dei dati per l'articolo specificato. Questa stored procedure viene eseguita nel database di pubblicazione del server di pubblicazione e nel database di sottoscrizione del Sottoscrittore.

Convenzioni di sintassi Transact-SQL

Sintassi

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' ]
[ ; ]

Argomenti

[ @publication = ] N'publication'

Nome della pubblicazione in cui è presente l'articolo. @publication è sysname, senza impostazione predefinita.

[ @article = ] N'article'

Nome dell'articolo da convalidare. @article è sysname, senza impostazione predefinita.

[ @rowcount_only = ] rowcount_only

Indica se per la tabella viene restituito solo il conteggio delle righe. @rowcount_only è smallint, con un valore predefinito .1

  • Se 0, eseguire un conteggio delle righe e un checksum compatibile con SQL Server 7.0.
  • Se 1, eseguire solo un controllo del conteggio delle righe.
  • Se 2, eseguire un conteggio delle righe e un checksum binario.

[ @full_or_fast = ] full_or_fast

Metodo utilizzato per calcolare il conteggio delle righe. @full_or_fast è tinyint e può essere uno di questi valori:

Valore Descrizione
0 Esegue il conteggio completo usando COUNT(*).
1 Esegue il conteggio rapido da sysindexes.rows. Il conteggio delle righe in sysindexes è più veloce rispetto al conteggio delle righe nella tabella effettiva. Tuttavia, sysindexes viene aggiornato in modo differinte e il conteggio delle righe potrebbe non essere accurato.
2 (predefinito) Esegue un conteggio rapido condizionale eseguendo innanzitutto un tentativo con il metodo rapido. Se il metodo rapido evidenzia delle differenze, viene applicato il metodo completo. Se expected_rowcount è NULL e la stored procedure viene usata per ottenere il valore, viene sempre utilizzata una stored procedure completa COUNT(*) .

[ @shutdown_agent = ] shutdown_agent

Indica se l'esecuzione dell'agente di distribuzione viene interrotta immediatamente al termine della convalida. @shutdown_agent è bit, con il valore predefinito 0.

  • Se 0, il agente di distribuzione non viene arrestato.
  • Se 1, il agente di distribuzione si arresta dopo la convalida dell'articolo.

[ @subscription_level = ] subscription_level

Indica se la convalida viene prelevata o meno da un set di Sottoscrittori. @subscription_level è bit, con un valore predefinito .0

  • Se 0, la convalida viene applicata a tutti i Sottoscrittori.
  • Se 1, la convalida viene applicata solo a un subset dei Sottoscrittori specificati dalle chiamate a sp_marksubscriptionvalidation nella transazione aperta corrente.

[ @reserved = ] riservato

Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.

[ @publisher = ] N'publisher'

Specifica un server di pubblicazione non SQL Server. @publisher è sysname, con un valore predefinito .NULL

@publisher non deve essere usato quando si richiede la convalida in un server di pubblicazione di SQL Server.

Valori del codice restituito

0 (esito positivo) o 1 (errore).

Osservazioni:

sp_article_validation viene usato nella replica transazionale.

sp_article_validation fa in modo che le informazioni di convalida vengano raccolte nell'articolo specificato e inserisca una richiesta di convalida nel log delle transazioni. Quando l'agente di distribuzione riceve la richiesta, confronta le informazioni di convalida incluse nella richiesta con quelle della tabella del Sottoscrittore. I risultati della convalida vengono visualizzati in Monitoraggio replica e negli avvisi di SQL Server Agent.

Autorizzazioni

Solo gli utenti con SELECT ALL autorizzazioni per la tabella di origine per l'articolo convalidato possono eseguire sp_article_validation.