0
Viktor Zull
06.11.08
✎
01:29
|
Привет всем участникам формума.
Возникла вот такая проблема: при тестировании и исправлении информационной базы, развернутой на Microsoft SQL Server 2005, на этапе реструктуризации данных появляется критическая ошибка:
Microsoft OLE DB Provider for SQL Server: CREATE UNIQUE INDEX terminated because a duplicate key was found for object name 'dbo._ReferenceChangeRec5512NG' and index name '_Refere5512_ByNodeMsg_RNRNG'. The duplicate key value is (0x00001c7b, 0xabb600a0c5b2377411dcc3716167d430, <NULL>, 0x9412001d604a935011dcffe0eff230bd).
HRESULT=80040E2F, SQLSrvr: Error state=1, Severity=10, native=1505, line=1
Выяснил, что таблицы с именами _ReferenceChangeRec - это таблицы регистрации изменений для планов обмена, в них хранятся сведения об изменениях объектов ИБ, для исполнения корректной перегрузки данных.
Для решения возникшей проблем очистил все таблицы регистрации изменений, выполнив в консоле MS SQL Server запрос вида:
DELETE FROM _ReferenceChangeRec<Номер таблицы>.
После этого реструктуризация стала выполняться без ошибок.
Всвязи с этим вопрос: можно ли удалять данные таблиц регистрации таким образом, не может ли повлиять это удаление на другие данные в ИБ? Посоветуйте стоит так делать, или есть другие пути решения.
В моем случае планы обмена не используются для перегрузки данных между базами, но используется выгрузка-загрузка XML.
Дополнительные сведения:
Платформа: 8.1.12.101
Конфигурация ИБ: Управление торговлей 10.3.5.1
|
|