ИСПРАВИТЬ: сообщение об ошибке при попытке агента распределителя применить моментальный снимок к подписчику в SQL Server 2005: "необходимо объявить скалярную переменную"@ Variable""

Переводы статьи Переводы статьи
Код статьи: 936534 - Vizualiza?i produsele pentru care se aplic? acest articol.
Ошибка #: 50001158 (исправление SQL)
Развернуть все | Свернуть все

В этой статье

Проблема

Рассмотрим следующую ситуацию. Настройка репликации транзакций Microsoft SQL Server 2005. Успешно создания исходного моментального снимка на стороне издателя. В этом случае при попытке применить моментальный снимок к подписчику агентом распространителя появляется следующее сообщение об ошибке:
Ошибка: 137, уровень серьезности: 15, состояние: 2
Необходимо объявить скалярную переменную «@ Variable».
Эта проблема возникает, если выполняются следующие условия:
  • Репликация транзакций содержит созданные статьи, которая основана на таблице, которая вычисляемые столбцы.
  • Столбец первичного ключа сортировки после сортировки вычисляемых столбцов.
  • Из syscolumns системные таблицы можно увидеть, столбец ID столбца первичного ключа больше идентификаторы столбцов вычисляемых столбцов.
  • Публикация использует параллельной обработки моментальных снимков.

Причина

Агент распространителя создает хранимую процедуру для вставки данных на подписчике. Однако хранимая процедура имеет недопустимый параметр номера.

Решение

Накопительное обновление информации

Исправление этой уязвимости первого выпуска накопительного обновления 2. Для получения дополнительных сведений о том, как получить этот накопительный пакет обновления для SQL Server 2005 с пакетом обновления 2 щелкните следующий номер статьи базы знаний Майкрософт:
936305 Накопительный пакет обновления 2 для SQL Server 2005 с пакетом обновления 2
Примечание Поскольку сборки являются накопительными, каждый новый выпуск исправлений содержит все исправления и исправить все исправления безопасности, которые вошли в состав SQL Server 2005 release. Корпорация Майкрософт рекомендует их применение самую последнюю версию исправления, содержащего это исправление. Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:
937137 SQL Server 2005 выполняет построение, выпущенных после пакета обновления 2 (SP2) для SQL 2005
Исправления Microsoft SQL Server 2005 создаются для определенных пакетов обновления SQL Server. Необходимо установить исправление SQL Server 2005 с пакетом обновления 2 для установки SQL Server 2005 с пакетом обновления 2. По умолчанию какие-либо исправления, входящее в пакет обновления SQL Server включены в следующий пакет обновления SQL Server.

Временное решение

Чтобы обойти эту проблему, используйте один из следующих способов:
  • При создании базовой таблицы статьи, убедитесь, что столбец первичного ключа сортировки перед вычисляемых столбцах сортируются.
  • Используйте собственный моментальный снимок обработки или обработки моментального снимка базы данных, а не параллельной обработки моментальных снимков.

Статус

Корпорация Майкрософт подтверждает, что это проблема в продуктах Microsoft, перечисленных в разделе «Относится к».

Дополнительная информация

Например эта проблема возникает после создания базовой таблицы статьи с помощью следующей инструкции:
CREATE TABLE [dbo].[test](
	[col1] [char](10) NOT NULL,
	[col2] [char](10) NOT NULL,
	[col_1_2]  AS ([col1] + [col2]),
	[ID] [int] IDENTITY(1,1) NOT FOR REPLICATION PRIMARY KEY NOT NULL
)
Примечание. Это ЭКСПРЕСС-ПУБЛИКАЦИЯ, подготовленная непосредственно службой технической поддержки Майкрософт . Сведения, содержащиеся в данном документе, предоставлены в качестве отклика на возникшие проблемы. Из-за срочности в материалах могут быть опечатки, и в любое время и без уведомления в них могут быть внесены изменения. Чтобы получить дополнительные сведения, см. Условия использования.

Свойства

Код статьи: 936534 - Последний отзыв: 18 июня 2011 г. - Revision: 4.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Workgroup Edition
Ключевые слова: 
kbfix kbsql2005repl kbexpertiseadvanced kbqfe kbmt KB936534 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:936534

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com