Я только что узнал, что с тех пор, как я создал свою БД на другом сервере, который имел различную сортировку, а затем иммигрировал на новый сервер с новой сортировкой, теперь у меня возникают проблемы, и я решил изменить все значения старой сортировки.Невозможно обновить sys.columns - любой другой подход?
Так что я пытался выполнить этот запрос:
sp_configure "Allow Updates", 1
GO
RECONFIGURE WITH OVERRIDE
GO
UPDATE sys.columns SET collation_name =
'SQL_Latin1_General_CP1_CI_AS' WHERE collation_name = 'Hebrew_CI_AS'
GO
sp_configure "Allow Updates", 0
GO
RECONFIGURE
GO
Но вот выход запроса:
Configuration option 'allow updates' changed from 0 to 1.
Run the RECONFIGURE statement to install.
Msg 259, Level 16, State 1, Line 2
Ad hoc updates to system catalogs are not allowed.
Configuration option 'allow updates' changed from 1 to 0.
Run the RECONFIGURE statement to install.
UPDATE
Согласно ответам реветь, я просто смотрю для автоматизированного способа выполнения действия.
Таблицы SYS доступны только для чтения - вам нужно получить список и обновить сопоставление с фактической таблицей/столбцом –
@OMG Ponies, ОК, поэтому в нижней строке есть автоматизированный способ сделать это, так как я Я говорю о большом количестве столбцов в разных таблицах. Я думаю, что создам консольное приложение, которое генерирует скрипт SQL в соответствии со значениями из sys.columns и sys.tables, если у вас есть другие более короткие способы, пожалуйста, дайте понять. – Shimmy
Можете ли вы описать - какие проблемы? Обратите внимание, что вы, вероятно, имеете зависимости от столбцов с соответствующей сортировкой, таких как ограничения, индексы и т. Д. Вы не сможете изменить сортировку, не отбрасывая их в первую очередь. Я сомневаюсь, что вы должны это делать так, как вы правильно поняли, почему и что делать. Например, почему вы делаете это в целевой (производственной?) Базе данных? Почему эта сортировка на первом месте? Почему бы вам не изменить сортировку на сервере разработки? Как вы собираетесь его поддерживать? –