Kiedy nowy login jest tworzony w SQL Server, jest mu przypisywany domyślny język. Ten język jest używany do komunikatów systemowych i formatów daty/godziny. Ten język będzie używany jako język domyślny za każdym razem, gdy ten login połączy się z SQL Server (ale można go również zmienić na inny język w ramach sesji).
Jeśli kiedykolwiek zechcesz dowiedzieć się, jaki język jest przypisany do bieżącej sesji, możesz uruchomić jedną z opcji na tej stronie.
Opcja 1:Funkcja konfiguracji @@LANGUAGE
Pierwszą opcją uzyskania języka bieżącej sesji jest użycie @@LANGUAGE
funkcja skalarna. Po prostu użyj go jako części SELECT
oświadczenie.
Tak:
SELECT @@LANGUAGE;
Wynik:
us_english
Opcja 2:Polecenie DBCC USEROPTIONS
Możesz także uruchomić DBCC USEROPTIONS
aby zwrócić bieżący język, a także inne opcje bieżącego połączenia.
Tak:
DBCC USEROPTIONS;
Wynik:
+-------------------------+----------------+ | 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 | +-------------------------+----------------+
Opcja 3:Widok sys.dm_exec_requests
Ta opcja różni się nieco od poprzednich dwóch opcji, ponieważ ten widok systemowy zwraca informacje na poziomie pojedynczego żądania (zwraca informacje o każdym żądaniu wykonywanym w SQL Server). Możesz zawęzić go do bieżącego żądania (którym będzie SELECT
oświadczenie, za pomocą którego wysyłasz zapytanie do widoku).
Ten widok zwraca stosunkowo dużą liczbę kolumn, więc jeśli interesuje Cię tylko język, możesz wybrać tylko tę kolumnę.
Oto jak zwrócić język używany w bieżącym procesie użytkownika:
SELECT r.language FROM master.sys.dm_exec_requests r WHERE r.session_id = @@SPID;
Wynik:
+------------+ | language | |------------| | us_english | +------------+
Zawsze możesz zmienić język dla bieżącej sesji. Aby dowiedzieć się, jak to zrobić, zobacz Jak ustawić bieżący język w SQL Server (T-SQL).
Należy również zauważyć, że niektóre wbudowane funkcje T-SQL akceptują argumenty określające język/kulturę, która ma być używana na określonym poziomie zapytania. Na przykład PARSE()
funkcja umożliwia określenie kultury do użycia w zapytaniu (lub nawet części zapytania), która określa sposób formatowania danego ciągu (na przykład, zobacz Jak przekonwertować ciąg na datę/godzinę w SQL Server za pomocą PARSE( )).
Język domyślny
Pamiętaj, że użytkownik może mieć również język domyślny, inny niż język bieżący. Jeśli używają SET LANGUAGE
oświadczenie o zmianie na inny język, ich język domyślny pozostanie językiem domyślnym, nawet jeśli język bieżącej sesji uległ zmianie.
Aby znaleźć domyślny język użytkownika/logowania/roli, zobacz Jak znaleźć domyślny język użytkownika w SQL Server (T-SQL).