Próbuję ujednolicić wszystkie bazy danych w jednym zestawieniu - Latin1_General_CI_AS (standardowe zestawienie). Mam kilka baz danych w SQL_Latin1_General_CP1_CI_AS.
Wiem, że mogę użyć ZMIEŃ bazę danych, aby zmienić sortowanie bazy danych, ale dotyczy to tylko nowych obiektów. Rozumiem, że jedynym sposobem na zmianę istniejących kolumn jest zrobienie ALTER COLUMN na każdej kolumnie w każdej tabeli - i musiałbym upuścić i odtworzyć wszystkie indeksy, aby to zrobić.
Myślę, że wyglądałoby to tak:
DROP INDEX indexname ON tablename
GO
ALTER TABLE tablename ALTER COLUMN columname varchar(50) COLLATE Latin1_General_CI_AS NULL
GO
CREATE CLUSTERED INDEX indexname ON tablename (columname ASC)
i powtarzaj dla każdej kolumny varchar, char, text, nvarchar, nchar i ntext w całej bazie danych. To byłby ogromny skrypt SQL.
Czy istnieje prostszy sposób, aby to zrobić, czy ktoś może zasugerować sposób zautomatyzowania tworzenia skryptu SQL, aby to zrobić?
źródło