Der er (mindst) et par måder, du kan bruge T-SQL til at returnere standardsproget for et specificeret login i SQL Server.
Du kan især bruge følgende metoder:
- Forespørg på
LOGINPROPERTY()
fungere. - Forespørg på
sys.server_principals
systemkatalogvisning imaster
database.
Eksempler på disse er nedenfor.
LOGINPROPERTY()
Funktion
LOGINPROPERTY()
funktion kræver et login-navn og en egenskab, der sendes til den som argumenter. Den frembringer derefter sit resultat baseret på disse argumenter.
Her er et eksempel.
SELECT LOGINPROPERTY('Bart', 'DefaultLanguage');
Resultat:
us_english
sys.server_principals
Vis
En alternativ måde at gøre det på er at bruge sys.server_principals
systemkatalogvisning.
Denne visning returnerer flere kolonner, end vi har brug for, så vi kan angive, hvilke kolonner vi vil have returneret.
Vi bør også angive det login, vi ønsker at returnere, ellers får vi alle logins (selvom der ikke er noget galt med det, hvis det er det, du skal gøre).
SELECT
default_language_name
FROM master.sys.server_principals
WHERE name = 'Bart';
Resultat:
us_english
En fordel ved at bruge denne visning er, at det er nemt at inkludere andre kolonner, såsom standarddatabasenavnet osv.
SELECT
type_desc,
default_database_name,
default_language_name
FROM master.sys.server_principals
WHERE name = 'Bart';
Resultat:
+-------------+-------------------------+-------------------------+ | type_desc | default_database_name | default_language_name | |-------------+-------------------------+-------------------------| | SQL_LOGIN | master | us_english | +-------------+-------------------------+-------------------------+