Недавно мы перенесли нашу базу данных с нашего сервера SQL Server 2005 на наш сервер SQL Server 2008. Все изменилось, но теперь мы находим, что у нас возникают конфликты сортировки. У старого сервера была другая сортировка с новым сервером.
Теперь наши таблицы, созданные до перемещения, являются одной сортировкой, а те, которые создаются после, являются еще одним сопоставлением.
Есть ли способ обновить таблицы/столбцы со старой сортировкой для новой сортировки?
Я понимаю, что настройка сортировки по умолчанию для базы данных/сервера не изменяет существующие таблицы (ссылка). Я действительно не хочу воссоздавать базу данных, если мне это не нужно.
Любая помощь действительно ценится.
UPDATE
Спасибо, что помогли, ребята, наконец-то заработали.
Для справки в будущем, вот мой последний script:
SELECT 'ALTER TABLE [' + SYSOBJECTS.Name + '] ALTER COLUMN [' + SYSCOLUMNS.Name + '] ' +
SYSTYPES.name +
CASE systypes.NAME
WHEN 'text' THEN ' '
ELSE
'(' + RTRIM(CASE SYSCOLUMNS.length
WHEN -1 THEN 'MAX'
ELSE CONVERT(CHAR,SYSCOLUMNS.length)
END) + ') '
END
+ ' ' + ' COLLATE Latin1_General_CI_AS ' + CASE ISNULLABLE WHEN 0 THEN 'NOT NULL' ELSE 'NULL' END
FROM SYSCOLUMNS , SYSOBJECTS , SYSTYPES
WHERE SYSCOLUMNS.ID = SYSOBJECTS.ID
AND SYSOBJECTS.TYPE = 'U'
AND SYSTYPES.Xtype = SYSCOLUMNS.xtype
AND SYSCOLUMNS.COLLATION IS NOT NULL
AND NOT ( sysobjects.NAME LIKE 'sys%' )
AND NOT ( SYSTYPES.name LIKE 'sys%' )
GO
Вот сайт, содержащий script, на котором я основывался. Я должен был настроить его, чтобы он работал правильно.