Er zijn (ten minste) een aantal manieren waarop u T-SQL kunt gebruiken om de standaardtaal van een opgegeven login in SQL Server te retourneren.
U kunt in het bijzonder de volgende methoden gebruiken:
- Bezoek de
LOGINPROPERTY()
functie. - Bezoek de
sys.server_principals
systeemcatalogusweergave in demaster
database.
Voorbeelden hiervan staan hieronder.
De LOGINPROPERTY()
Functie
De LOGINPROPERTY()
functie vereist dat een inlognaam en een eigenschap eraan worden doorgegeven als argumenten. Op basis van die argumenten komt het vervolgens tot een resultaat.
Hier is een voorbeeld.
SELECT LOGINPROPERTY('Bart', 'DefaultLanguage');
Resultaat:
us_english
De sys.server_principals
Bekijk
Een alternatieve manier om dit te doen is om de sys.server_principals
. te gebruiken systeemcatalogus bekijken.
Deze weergave retourneert meer kolommen dan we nodig hebben, dus we kunnen specificeren welke kolommen we willen retourneren.
We moeten ook de login specificeren die we willen retourneren, anders krijgen we alle logins (hoewel daar niets mis mee is, als dat is wat je moet doen).
SELECT
default_language_name
FROM master.sys.server_principals
WHERE name = 'Bart';
Resultaat:
us_english
Een voordeel van het gebruik van deze weergave is dat het gemakkelijk is om andere kolommen op te nemen, zoals de standaard databasenaam, enz.
SELECT
type_desc,
default_database_name,
default_language_name
FROM master.sys.server_principals
WHERE name = 'Bart';
Resultaat:
+-------------+-------------------------+-------------------------+ | type_desc | default_database_name | default_language_name | |-------------+-------------------------+-------------------------| | SQL_LOGIN | master | us_english | +-------------+-------------------------+-------------------------+