В SQL Server можете да използвате ALTER LOGIN
изявление за промяна на езика по подразбиране за конкретно влизане.
Това ще гарантира, че всеки път, когато това влизане се свързва към SQL Server, всички формати за дата/час и системни съобщения са представени в правилния формат и език.
Пример
Ето пример за демонстрация.
ALTER LOGIN Bart
WITH DEFAULT_LANGUAGE = German;
Това променя езика за Bart
влезте на немски език.
Всъщност немският е просто псевдоним. Истинското име на езика е Deutsch. Така че можете да използвате името или псевдонима с това изявление.
Сега, когато Барт влезе и изпълни следното изявление, той получава Deutsch като свой език.
SELECT @@LANGUAGE;
Резултат:
Deutsch
Формати за дата
Промяната на езика по подразбиране на входа също променя начина, по който се форматират стойностите за дата/час.
Например, ето какво се случва, когато Барт изпълни следната заявка.
SELECT FORMAT(GETDATE(), 'd');
Резултат:
30.03.2020
Тази функция извежда датата във формат, съвместим с немски/немски език.
Въпреки това, Барт има възможността да отменя тези настройки.
Замяна на езика по подразбиране
Обърнете внимание, че Барт все още може да отмени своя език по подразбиране в рамките на своята сесия, като използва SET LANGUAGE
.
SET LANGUAGE Spanish;
Резултат:
Se cambió la configuración de idioma a Español.
Той може също така изрично да зададе език за някои заявки, като например при използване на FORMAT()
функция или PARSE()
функция за форматиране на стойности за дата/час. Тези функции приемат незадължителен аргумент „култура“, който ви позволява да посочите езика, който трябва да се използва за форматиране на изхода.
Ето същата заявка от предишния пример, но този път Барт добавя трети аргумент, който определя различен език, който да се използва за изхода.
SELECT
FORMAT(GETDATE(), 'd') AS [Default],
FORMAT(GETDATE(), 'd', 'en-US') AS [en-US];
Резултат:
+------------+-----------+ | Default | en-US | |------------+-----------| | 30.03.2020 | 3/30/2020 | +------------+-----------+