Поделиться через


sp_article_validation (Transact-SQL)

Область применения: SQL Server Управляемый экземпляр SQL Azure

Инициирует запрос проверки данных для указанной статьи. Эта хранимая процедура выполняется на издателе в базе данных публикации и на подписчике в базе данных подписки.

Соглашения о синтаксисе Transact-SQL

Синтаксис

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

Аргументы

[ @publication = ] N'publication'

Имя публикации, в которой существует статья. @publication — sysname без значения по умолчанию.

[ @article = ] N'article'

Имя проверяемой статьи. @article — sysname без значения по умолчанию.

[ @rowcount_only = ] rowcount_only

Указывает, что возвращается только число строк таблицы. @rowcount_only имеет небольшой размер с значением по умолчанию1.

  • При 0необходимости выполните счетчик строк и совместимую с SQL Server 7.0 контрольную сумму.
  • Если 1выполняется только проверка числа строк.
  • Если 2, выполните учетную запись строк и двоичную контрольную сумму.

[ @full_or_fast = ] full_or_fast

Метод, используемый для вычисления числа строк. @full_or_fast крошечный и может быть одним из следующих значений:

значение Описание
0 Выполняет полное число с помощью COUNT(*).
1 Выполняет быстрый подсчет из sysindexes.rows. Подсчет строк выполняется sysindexes быстрее, чем подсчет строк в фактической таблице. Тем не менее, sysindexes обновляется лениво, и число строк может быть не точным.
2 (по умолчанию) Выполняет условный быстрый подсчет, при котором сначала применяется быстрый метод, Если быстрый метод дает неточные результаты, переключается на полный подсчет. Если expected_rowcount используется NULL хранимая процедура для получения значения, всегда используется полная COUNT(*) процедура.

[ @shutdown_agent = ] shutdown_agent

Указывает, будет ли агент распространителя завершен немедленно после завершения проверки. @shutdown_agent бит с значением по умолчанию0.

  • Если 0агент распространения не завершает работу.
  • Если 1агент распространения завершает работу после проверки статьи.

[ @subscription_level = ] subscription_level

Указывает, будет ли проверка применяться к части подписчиков. @subscription_level бит с значением по умолчанию0.

  • Если 0проверка применяется ко всем подписчикам.
  • Если 1проверка применяется только к подмножества подписчиков, заданных вызовами sp_marksubscriptionvalidation текущей открытой транзакции.

[ @reserved = ] зарезервировано

Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.

[ @publisher = ] N'publisher'

Указывает издатель, отличный от SQL Server. @publisher — sysname с значением по умолчаниюNULL.

@publisher не следует использовать при запросе проверки на издателе SQL Server.

Значения кода возврата

0 (успешно) или 1 (сбой).

Замечания

sp_article_validation используется в репликации транзакций.

sp_article_validation приводит к сбору сведений о проверке в указанной статье и отправке запроса на проверку в журнал транзакций. Когда агент распространителя получает этот запрос, он сравнивает сведения для проверки, указанные в запросе, с таблицей подписчика. Результаты проверки отображаются в мониторе репликации и в агент SQL Server оповещениях.

Разрешения

Могут выполняться sp_article_validationтолько пользователи с SELECT ALL разрешениями в исходной таблице для проверяемой статьи.