KB3173157 — добавляет хранимую процедуру для ручной очистки боковой таблицы отслеживания изменений в SQL Server

Применяется к
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Express - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2012 Standard SQL Server 2012 Enterprise SQL Server 2012 Developer

Это обновление добавляет новую хранимую процедуру, которая позволяет вручную очищать боковую таблицу (change_tracking_objectid) в базе данных, в которой включено отслеживание изменений.

Синтаксис

sp_flush_CT_internal_table_on_demand [ @TableToClean= ] "Имя_таблицы"

Аргументы

[@TableToClean= ] TableName — это имя таблицы, для которой включено отслеживание изменений. Невыполненная работа остается для автоматической очистки путем отслеживания изменений.

Ожидаемые выходные данные

При выполнении хранимой процедуры происходит один из следующих сценариев:

  • Если таблица не существует или отслеживание изменений не включено, будут выданы соответствующие сообщения об ошибках.
  • Эта хранимая процедура вызовет другую внутреннюю хранимую процедуру, которая очищает содержимое из боковой таблицы отслеживания изменений, основанной на недопустимой версии очистки с помощью динамического административного представления sys.change_tracking_tables. При запуске отобразится информация об общем количестве удаленных строк (для каждых 5000 строк).

      

Решение

Сведения о пакете обновления для SQL Server

Это обновление исправлено в следующих пакетах обновления для SQL Server:

SQL Server 2016 с пакетом обновления 1 (SP1)

Пакет обновления 3 (SP3) для SQL Server 2014

Пакет обновления 4 (SP4) для SQL Server 2012 г.

Сведения о пакетах обновления для SQL Server:

Пакеты обновления являются накопительными. Каждый новый пакет обновления содержит все исправления, которые были в предыдущих пакетах обновления, а также все новые исправления. Мы рекомендуем применить последний пакет обновления и последнее накопительное обновление для этого пакета обновления. Вам не нужно устанавливать предыдущий пакет обновления перед установкой последнего пакета обновления. Дополнительные сведения о последнем пакете обновления и последнем накопительном обновлении см. в таблице 1 в следующей статье.

Определение версии, выпуска и уровня обновления SQL Server и его компонентов

Справочник. Дополнительные сведения о очистке отслеживания изменений см. в разделах очистка Отслеживание изменений (часть 1) и очистка Отслеживание изменений (часть 2).