Hay (al menos) un par de formas en que puede usar T-SQL para devolver el idioma predeterminado de un inicio de sesión específico en SQL Server.
En particular, puede utilizar los siguientes métodos:
- Consulte
LOGINPROPERTY()
función. - Consulta
sys.server_principals
vista de catálogo del sistema en elmaster
base de datos.
Ejemplos de estos están a continuación.
El LOGINPROPERTY()
Función
LOGINPROPERTY()
La función requiere que se le pase un nombre de inicio de sesión y una propiedad como argumentos. Luego produce su resultado basado en esos argumentos.
He aquí un ejemplo.
SELECT LOGINPROPERTY('Bart', 'DefaultLanguage');
Resultado:
us_english
Los sys.server_principals
Ver
Una forma alternativa de hacerlo es usar sys.server_principals
vista del catálogo del sistema.
Esta vista devuelve más columnas de las que necesitamos, por lo que podemos especificar qué columnas queremos que se devuelvan.
También debemos especificar el inicio de sesión que queremos devolver; de lo contrario, obtendremos todos los inicios de sesión (aunque no hay nada de malo en eso, si eso es lo que necesita hacer).
SELECT
default_language_name
FROM master.sys.server_principals
WHERE name = 'Bart';
Resultado:
us_english
Una ventaja de usar esta vista es que es fácil incluir otras columnas, como el nombre de la base de datos predeterminada, 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 | +-------------+-------------------------+-------------------------+