Estou tentando padronizar todos os bancos de dados em um único agrupamento - Latin1_General_CI_AS (o agrupamento padrão). Eu tenho alguns bancos de dados que estão no SQL_Latin1_General_CP1_CI_AS.
Eu sei que posso usar ALTER DATABASE para alterar o agrupamento do banco de dados, mas isso afeta apenas novos objetos. Meu entendimento é que a única maneira de alterar as colunas existentes é ALTER COLUMN em cada coluna em todas as tabelas - e eu precisaria soltar e recriar todos os índices para fazer isso.
Eu acho que seria algo como isto:
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)
e repita para todas as colunas varchar, char, text, nvarchar, nchar e ntext em todo o banco de dados. Isso seria um enorme script SQL.
Existe uma maneira mais fácil de fazer isso ou alguém pode sugerir uma maneira de automatizar a criação de um script SQL para fazer isso?
fonte