Alterar idioma (language) do SQL Server

Muitas vezes me questionam sobre como proceder com consultas envolvendo campos data. Bem, em linhas gerais podemos dizer que, fazendo a consulta utilizando o padrão ‘yyyy-mm-dd’ ou ‘yyyymmdd’ ( sendo [y]ear, [m]onth, [d]ay, respectivamente ) não teremos problemas.

SELECT
Codigo, Descricao, DataCadastro
FROM Clientes
WHERE
DataCadastro = ’2007-10-07′

Bem, não é bem assim, para que a sintaxe acima funcione, o servidor (e usuário logado) precisa estar utilizando o idioma inglês. Agora, e se o servidor tiver sido instalado com idioma em português, ou ainda, uma aplicação que antes funcionava pois estava em um servidor cujo idioma era inglês e fora restaurado num servidor cujo idioma seja português. Para esses casos precisaríamos de uma instrução para alterar o idioma, o script abaixo faria o serviço.

– EXIBIR A ATUAL CONFIGURACAO DE IDIOMA
SELECT @@language,  @@langid– DEFINIR O IDIOMA DEFAULT PARA O SERVIDOR
EXEC sp_configure ‘default language’, 0

– DEFINIR O IDIOMA PARA CADA LOGIN DO SERVIDOR
EXEC sp_defaultlanguage ‘sa’,  ‘us_english’
– EXEC sp_defaultlanguage ‘NomeUsuario’, ‘us_english’
– EXEC sp_defaultlanguage ‘Maquina\Usuario’, ‘us_english’

– COMANDO PARA RECONFIGURAR ALTERACOES FEITAS
RECONFIGURE

– APOS ISSO SERA PRECISO DAR UM STOP e START NO SQL SERVER

até a próxima.

Deixe um comentário