V SQL Server můžete použít ALTER LOGIN
příkaz ke změně výchozího jazyka pro konkrétní přihlášení.
Tím zajistíte, že kdykoli se toto přihlášení připojí k serveru SQL Server, všechny formáty data a času a systémové zprávy budou prezentovány ve správném formátu a jazyce.
Příklad
Zde je příklad k demonstraci.
ALTER LOGIN Bart
WITH DEFAULT_LANGUAGE = German;
Tím se změní jazyk pro Bart
přihlášení do němčiny.
Němčina je vlastně jen alias. Skutečný název jazyka je Deutsch. S tímto příkazem tedy můžete použít jméno nebo alias.
Nyní, když se Bart přihlásí a spustí následující příkaz, získá jako svůj jazyk Deutsch.
SELECT @@LANGUAGE;
Výsledek:
Deutsch
Formáty data
Změna výchozího jazyka přihlášení také změní způsob formátování hodnot data/času.
Zde je například uvedeno, co se stane, když Bart spustí následující dotaz.
SELECT FORMAT(GETDATE(), 'd');
Výsledek:
30.03.2020
Tato funkce vydává datum ve formátu konzistentním s německým/německým jazykem.
Bart však má možnost tato nastavení přepsat.
Přepsat výchozí jazyk
Všimněte si, že Bart může stále přepsat svůj výchozí jazyk ze své relace pomocí SET LANGUAGE
.
SET LANGUAGE Spanish;
Výsledek:
Se cambió la configuración de idioma a Español.
Může také explicitně nastavit jazyk pro některé dotazy, například při použití FORMAT()
nebo PARSE()
funkce pro formátování hodnot data/času. Tyto funkce přijímají volitelný argument „kultura“, který vám umožňuje určit jazyk, který by měl být použit k formátování výstupu.
Zde je stejný dotaz jako v předchozím příkladu, ale tentokrát Bart přidává třetí argument, který určuje jiný jazyk, který se má použít pro výstup.
SELECT
FORMAT(GETDATE(), 'd') AS [Default],
FORMAT(GETDATE(), 'd', 'en-US') AS [en-US];
Výsledek:
+------------+-----------+ | Default | en-US | |------------+-----------| | 30.03.2020 | 3/30/2020 | +------------+-----------+