Você está em: Comunidades / Sql Server /

Adriano Rosa - Como alterar o collate do SQL Server

Tags:
sql server,

Algumas vezes, na migração de uma base de dados ou na exportação de alguns dados para uma base de outro servidor, podemos ter certos problemas com acentuação. Isto ocorre se os dados da base de origem forem armazenados com seu collate (formato) diferentes da base de destino, ou seja, se temos uma base com seu collate em Latin1_General_CI_AI e exportarmos seus dados para uma outra base no qual o collate definido seja diferente a acentuação destes registros ficarão de forma truncada.


Link externo: Adriano Rosa - Como alterar o collate do SQL Server

Escrito por:

Adriano R.
WebMaster
quinta, 30 de abril de 2009 - 13:16
responder tópico

Exemplos de mudanças de collate:

ALTER DATABASE VEICULO COLLATE Latin1_General_CI_AI
GO

ALTER DATABASE VEICULO COLLATE Latin1_General_CI_AS
GO

ALTER TABLE SETOR ALTER COLUMN SETOR_NM VARCHAR(70)
COLLATE Latin1_General_CI_AS
GO

ou pode-se usar os comandos a seguir:
ALTER DATABASE rh SET SINGLE_USER WITH ROLLBACK IMMEDIATE
ALTER DATABASE rh COLLATE Latin1_General_CI_AI
ALTER DATABASE rh SET MULTI_USER
GO

Escrito por:

Junior A.
Analista de Sistemas
sexta, 26 de junho de 2009 - 14:40
responder tópico

Adriano, vale lembrar que ao alterar o COLLATE do database os atributos/colunas já existentes não sofrerão alteração, mas sim, apenas as novas que forem criadas com o COLLATE default do database.

Minha recomendação é alterar o COLLATE do database e alterar o de todas os atributos/colunas existentes por meio de script (conforme o Junior A. comentou acima)

Abraços!

Escrito por:

Deyvid William A.
DBA da Nokia Siemens Networks
sexta, 26 de junho de 2009 - 17:15
responder tópico

@Junior bem lembrado o código que acima!

@Deyvid, obrigado pela sua recomendação!

Escrito por:

Adriano R.
WebMaster
quarta, 01 de julho de 2009 - 10:45
responder tópico






Links Relacionados