Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
WinterGraveyard Member Откуда: Сообщений: 73 |
Ситуация:select @@version Microsoft SQL Server 2005 - 9.00.5069.00 (X64) На нем имеется view, которая использует синоним, который ссылается на таблицу через linked server. С недавних пор периодически стали вылезать вот такие ошибки. Отказаться от использования синонима не получится, вариант с установкой CU не подходит. В принципе, это нормально лечится с помощью sp_refreshview, но смущает периодичность возникновения данной ошибки - каждый день с утра, как будто кто-то ночью альтерит таблицу, на которую ссылается синоним. При этом система, к которой относится таблица, в плане объектов БД абсолютно статична - там не ведется разработка, никто не изменяет никакие объекты. Единственное, что удалось найти - там по ночам запускается процедура перестройки индексов таблиц, внутри использующая DBCC DBREINDEX. А про последнюю я в справке прочитал вот такое:
- т.е., получается, при определенных условиях выполнение этой команды чревато drop/create PK/UK, т.е. выполнением ALTER TABLE, и как следствие, возникновением той самой ошибки про change in schema version between compile time ("Compile Time") and run time ("Run Time") for table "Linked Table Name"? |
||
21 июн 18, 11:30 [21508947] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8322 |
WinterGraveyard, так используйте ALTER INDEX или поищите готовые наработки по переиндексированию. |
21 июн 18, 17:46 [21510470] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |