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


Как указать, что статья слияния таблиц доступна только для загрузки (программирование репликации на языке Transact-SQL)

Статьи, предназначенные только для загрузки, создаются для приложений с данными, не обновляемыми на подписчиках. Дополнительные сведения см. в разделе Оптимизация производительности репликации слиянием при работе со статьями, доступными только для загрузки.

Указание того, что новая статья таблицы публикации слиянием предназначена только для загрузки

  • Выполните хранимую процедуру sp_addmergearticle, указав значение 1 или 2 в параметре @subscriber_upload_options. Числа соответствуют следующему поведению.

    • 0 = без ограничений (по умолчанию). Изменения, произведенные на подписчике, передаются на издатель.

    • 1 — изменения на подписчике разрешены, но они не передаются на издатель.

    • 2 — изменения на подписчике не разрешены.

      ПримечаниеПримечание

      Если исходная таблица для статьи уже опубликована в другой публикации, то значение параметра @subscriber_upload_options должно быть одинаковым для обеих статей.

      ПримечаниеПримечание

      Если указать, что статья доступна только для загрузки после инициализации подписок, потребуется провести повторную инициализацию всех клиентских подписок, получивших эту статью.

Изменение существующей статьи таблицы слиянием с целью сделать ее доступной только для загрузки

  1. Чтобы определить, является ли статья доступной только для загрузки, выполните хранимую процедуру sp_helpmergearticle. Запомните значение upload_options для статьи в результирующем наборе.

  2. Если значение, возвращенное в шаге 1, равно 0, выполните хранимую процедуру sp_changemergearticle, указав значение subscriber_upload_options в параметре @property, значение 1 для параметров @force_invalidate_snapshot и @force_reinit_subscription и значение 1 или 2 в параметре @value, что соответствует следующему.

    • 1 — изменения на подписчике разрешены, но они не передаются на издатель.

    • 2 — изменения на подписчике не разрешены.

      ПримечаниеПримечание

      Если исходная таблица для статьи уже опубликована в другой публикации, доступность только для загрузки должна быть одинаковой для обеих статей.