No SQL Server, você pode usar o
ALTER LOGIN
instrução para alterar o idioma padrão para um login específico. Fazer isso garantirá que sempre que esse logon se conectar ao SQL Server, todos os formatos de data/hora e mensagens do sistema sejam apresentados no formato e idioma corretos.
Exemplo
Aqui está um exemplo para demonstrar.
ALTER LOGIN Bart
WITH DEFAULT_LANGUAGE = German;
Isso altera o idioma do
Bart
entrar em alemão. Na verdade, o alemão é apenas o alias. O nome real da língua é Deutsch. Portanto, você pode usar o nome ou o alias com esta instrução.
Agora, quando Bart faz login e executa a instrução a seguir, ele obtém o Deutsch como seu idioma.
SELECT @@LANGUAGE;
Resultado:
Deutsch
Formatos de data
Alterar o idioma padrão do login também altera a forma como os valores de data/hora são formatados.
Por exemplo, veja o que acontece quando Bart executa a consulta a seguir.
SELECT FORMAT(GETDATE(), 'd');
Resultado:
30.03.2020
Esta função produz a data em um formato consistente com o idioma Alemão/Deutsch.
No entanto, Bart tem a capacidade de substituir essas configurações.
Substituir o idioma padrão
Observe que Bart ainda pode substituir seu idioma padrão de dentro de sua sessão usando
SET LANGUAGE
. SET LANGUAGE Spanish;
Resultado:
Se cambió la configuración de idioma a Español.
Ele também pode definir explicitamente um idioma para algumas consultas, como ao usar o
FORMAT()
função ou a função PARSE()
função para formatar valores de data/hora. Essas funções aceitam um argumento opcional de “cultura” que permite especificar o idioma que deve ser usado para formatar a saída. Aqui está a mesma consulta do exemplo anterior, mas desta vez, Bart adiciona um terceiro argumento, que especifica um idioma diferente a ser usado para a saída.
SELECT
FORMAT(GETDATE(), 'd') AS [Default],
FORMAT(GETDATE(), 'd', 'en-US') AS [en-US];
Resultado:
+------------+-----------+ | Default | en-US | |------------+-----------| | 30.03.2020 | 3/30/2020 | +------------+-----------+