Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

2 maneiras de obter o idioma padrão de um login no SQL Server (T-SQL)


Existem (pelo menos) algumas maneiras de usar o T-SQL para retornar o idioma padrão de um logon especificado no SQL Server.

Em particular, você pode usar os seguintes métodos:
  • Consulte o LOGINPROPERTY() função.
  • Consulte os sys.server_principals visualização do catálogo do sistema no master banco de dados.

Exemplos destes estão abaixo.

O LOGINPROPERTY() Função


O LOGINPROPERTY() A função requer que um nome de login e uma propriedade sejam passados ​​para ela como argumentos. Em seguida, ele produz seu resultado com base nesses argumentos.

Aqui está um exemplo.
SELECT LOGINPROPERTY('Bart', 'DefaultLanguage');

Resultado:
us_english

Os sys.server_principals Visualizar


Uma maneira alternativa de fazer isso é usar o sys.server_principals visualização do catálogo do sistema.

Essa visualização retorna mais colunas do que precisamos, para que possamos especificar quais colunas queremos retornar.

Devemos também especificar o login que queremos retornar, caso contrário, obteremos todos os logins (embora não haja nada de errado com isso, se é isso que você precisa fazer).
SELECT 
    default_language_name 
FROM master.sys.server_principals
WHERE name = 'Bart';

Resultado:
us_english

Um benefício de usar essa visualização é que é fácil incluir outras colunas, como o nome do banco de dados padrão, etc.
SELECT 
    type_desc,
    default_database_name,
    default_language_name 
FROM master.sys.server_principals
WHERE name = 'Bart';

Resultado:
+-------------+-------------------------+-------------------------+
 | type_desc   | default_database_name   | default_language_name   |
 |-------------+-------------------------+-------------------------|
 | SQL_LOGIN   | master                  | us_english              |
 +-------------+-------------------------+-------------------------+