I SQL Server kan du använda ALTER LOGIN
uttalande för att ändra standardspråket för en specifik inloggning.
Genom att göra detta säkerställer du att alla datum/tidsformat och systemmeddelanden presenteras i rätt format och språk närhelst den inloggningen ansluter till SQL Server.
Exempel
Här är ett exempel att visa.
ALTER LOGIN Bart
WITH DEFAULT_LANGUAGE = German;
Detta ändrar språket för Bart
logga in på tyska.
Egentligen är tyska bara aliaset. Språkets egentliga namn är tyska. Så du kan använda namnet eller aliaset med detta uttalande.
Nu när Bart loggar in och kör följande uttalande får han Deutsch som sitt språk.
SELECT @@LANGUAGE;
Resultat:
Deutsch
Datumformat
Om du ändrar inloggningens standardspråk ändras också hur datum-/tidsvärden formateras.
Här är till exempel vad som händer när Bart kör följande fråga.
SELECT FORMAT(GETDATE(), 'd');
Resultat:
30.03.2020
Denna funktion matar ut datumet i ett format som överensstämmer med det tyska/tyska språket.
Bart har dock möjligheten att åsidosätta dessa inställningar.
Åsidosätt standardspråket
Observera att Bart fortfarande kan åsidosätta sitt standardspråk från sin session genom att använda SET LANGUAGE
.
SET LANGUAGE Spanish;
Resultat:
Se cambió la configuración de idioma a Español.
Han kan också uttryckligen ställa in ett språk för vissa frågor, till exempel när du använder FORMAT()
funktion eller PARSE()
funktion för att formatera datum/tidsvärden. Dessa funktioner accepterar ett valfritt "kultur"-argument som låter dig ange vilket språk som ska användas för att formatera utdata.
Här är samma fråga från föregående exempel, men den här gången lägger Bart till ett tredje argument, som anger ett annat språk som ska användas för utdata.
SELECT
FORMAT(GETDATE(), 'd') AS [Default],
FORMAT(GETDATE(), 'd', 'en-US') AS [en-US];
Resultat:
+------------+-----------+ | Default | en-US | |------------+-----------| | 30.03.2020 | 3/30/2020 | +------------+-----------+