Изменение параметров сортировки базы данных не обновляет параметры сортировки varchar/ текстовых полей в БД (MS SQL)

Я изменил параметры сортировки базы данных. Все столбцы text/varchar до изменения были установлены в базу данных по умолчанию. Когда были внесены изменения в параметры сортировки БД, я ожидал, что столбцы, для которых было установлено значение по умолчанию базы данных, останутся значениями по умолчанию для базы данных и, следовательно, останутся связанными с новым параметрами сортировки БД. Тем не менее, я заметил, что эти столбцы были фактически изменены, чтобы они были специально установлены для старого сопоставления.

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

1: Почему столбцы не обновлялись?

2: есть ли способ заставить их автоматически обновляться?

1 ответ

Решение

Я недавно столкнулся с этой проблемой сам. Изменение параметров сортировки по умолчанию для базы данных работает только для новых созданных объектов - оно не меняет никаких существующих (источник: Books Online - "Вы можете изменить параметры сортировки любых новых объектов, созданных в пользовательской базе данных, с помощью предложения COLLATE оператора ALTER DATABASE. Этот оператор не изменяет параметры сортировки столбцов в любых существующих пользовательских таблицах. Их можно изменить, используя предложение COLLATE в ALTER TABLE."

Я не знаю ни одного способа заставить их обновляться автоматически - вам нужно обновить их вручную. Я использовал метод отсюда

Другие вопросы по тегам