Když je vytvořeno nové přihlášení na serveru SQL Server, je mu přiřazen výchozí jazyk. Tento jazyk se používá pro systémové zprávy a formáty data/času. Tento jazyk bude použit jako výchozí jazyk vždy, když se toto přihlášení připojí k serveru SQL (ale lze jej v rámci relace také změnit na jiný jazyk).
Pokud někdy budete chtít zjistit jazyk, který je přiřazen k aktuální relaci, můžete spustit jednu z možností na této stránce.
Možnost 1:Funkce konfigurace @@LANGUAGE
První možností, jak získat jazyk aktuální relace, je použít @@LANGUAGE
skalární funkce. Jednoduše jej použijte jako součást SELECT
prohlášení.
Takhle:
SELECT @@LANGUAGE;
Výsledek:
us_english
Možnost 2:Příkaz DBCC USEROPTIONS
Můžete také spustit DBCC USEROPTIONS
vrátit aktuální jazyk a také další možnosti pro aktuální připojení.
Takhle:
DBCC USEROPTIONS;
Výsledek:
+-------------------------+----------------+ | Set Option | Value | |-------------------------+----------------| | textsize | -1 | | language | us_english | | dateformat | mdy | | datefirst | 7 | | lock_timeout | 5000 | | quoted_identifier | SET | | arithabort | SET | | ansi_null_dflt_on | SET | | ansi_warnings | SET | | ansi_padding | SET | | ansi_nulls | SET | | concat_null_yields_null | SET | | isolation level | read committed | +-------------------------+----------------+
Možnost 3:Zobrazení sys.dm_exec_requests
Tato možnost je trochu odlišná od předchozích dvou možností v tom, že toto systémové zobrazení vrací informace na úrovni jednotlivých požadavků (vrací informace o každém požadavku, který se provádí na serveru SQL Server). Můžete jej zúžit na aktuální požadavek (což bude SELECT
příkaz, kterým se dotazujete na pohled).
Toto zobrazení vrací relativně velký počet sloupců, takže pokud vás zajímá pouze jazyk, můžete vybrat pouze tento sloupec.
Zde je návod, jak vrátit jazyk používaný v aktuálním uživatelském procesu:
SELECT r.language FROM master.sys.dm_exec_requests r WHERE r.session_id = @@SPID;
Výsledek:
+------------+ | language | |------------| | us_english | +------------+
Jazyk pro aktuální relaci můžete kdykoli změnit. Chcete-li zjistit, jak na to, viz Jak nastavit aktuální jazyk na serveru SQL Server (T-SQL).
Všimněte si také, že některé vestavěné funkce T-SQL přijímají argumenty pro určení jazyka/kultury, která má být použita na konkrétní úrovni dotazu. Například PARSE()
funkce umožňuje zadat kulturu, která se má použít pro dotaz (nebo dokonce část dotazu), která určuje, jak je daný řetězec naformátován (příklad viz Jak převést řetězec na datum/čas na serveru SQL Server pomocí PARSE( )).
Výchozí jazyk
Všimněte si, že uživatel může mít také výchozí jazyk, který se liší od aktuálního jazyka. Pokud používají SET LANGUAGE
změnit na jiný jazyk, jejich výchozí jazyk zůstane jejich výchozím jazykem, i když se jazyk aktuální relace změnil.
Chcete-li najít výchozí jazyk pro uživatele/přihlášení/role, přečtěte si článek Jak najít výchozí jazyk uživatele na serveru SQL Server (T-SQL).