Zde je několik způsobů, jak vrátit informace o všech jazycích na serveru SQL Server. Jedna metoda používá pohled na kompatibilitu systému, druhá metoda provádí systémovou uloženou proceduru. Obě metody vrátí stejný výsledek.
syslanguages
Zobrazení kompatibility systému
Soubor sys.syslanguages
zobrazení kompatibility systému vrátí informace o všech jazycích na serveru SQL Server. Vrací informace, jako je název jazyka, jeho alias, formát data a dokonce i názvy měsíců, krátkých měsíců, dnů atd.
Jako u každého zobrazení můžete vybrat pouze ty sloupce, které vás zajímají. Pokud tedy chcete pouze seznam názvů jazyků nebo aliasů, můžete vybrat pouze tyto sloupce.
Zde je návod, jak vybrat všechny jazyky a jejich aliasy v SQL Server:
SELECT name, alias FROM sys.syslanguages;
A tady je výsledek, který dostanu v SQL Server 2017:
+--------------------+---------------------+ | name | alias | |--------------------+---------------------| | us_english | English | | Deutsch | German | | Français | French | | 日本語 | Japanese | | Dansk | Danish | | Español | Spanish | | Italiano | Italian | | Nederlands | Dutch | | Norsk | Norwegian | | Português | Portuguese | | Suomi | Finnish | | Svenska | Swedish | | čeština | Czech | | magyar | Hungarian | | polski | Polish | | română | Romanian | | hrvatski | Croatian | | slovenčina | Slovak | | slovenski | Slovenian | | ελληνικά | Greek | | български | Bulgarian | | русский | Russian | | Türkçe | Turkish | | British | British English | | eesti | Estonian | | latviešu | Latvian | | lietuvių | Lithuanian | | Português (Brasil) | Brazilian | | 繁體中文 | Traditional Chinese | | 한국어 | Korean | | 简体中文 | Simplified Chinese | | Arabic | Arabic | | ไทย | Thai | | norsk (bokmål) | Bokmål | +--------------------+---------------------+
sp_helplanguage
Uložená procedura systému
Případně můžete použít sp_helplanguage
uložená procedura systému. Tato uložená procedura vrací informace o všech jazycích na serveru SQL Server nebo o konkrétním jazyce, pokud je zadán.
Ve skutečnosti vrací svá data z sys.syslanguages
pohled na kompatibilitu uvedený výše.
Chcete-li určit jazyk, jednoduše předejte název jazyka nebo alias uložené proceduře při jejím volání. Pokud není zadán žádný jazyk, vrátí se všechny jazyky.
Zde je příklad vrácení informací o konkrétním jazyce:
EXEC sp_helplanguage Swedish;
Výsledek (při použití vertikálního výstupu):
-[ RECORD 1 ]------------------------- langid | 11 dateformat | ymd datefirst | 1 upgrade | 0 name | Svenska alias | Swedish months | januari,februari,mars,april,maj,juni,juli,augusti,september,oktober,november,december shortmonths | jan,feb,mar,apr,maj,jun,jul,aug,sep,okt,nov,dec days | måndag,tisdag,onsdag,torsdag,fredag,lördag,söndag lcid | 1053 msglangid | 1053
A tady je to, co byste udělali, pokud chcete vrátit všechny jazyky:
EXEC sp_helplanguage;
V SQL Server 2017 to vrátí 34 jazyků s jejich přidruženými informacemi (docela dlouhý seznam). Naštěstí jsem dříve vytvořil samostatný článek, který uvádí všech 34 jazyků a jejich formáty data v SQL Server 2017.