sql >> Databasteknik >  >> RDS >> Sqlserver

Hur man får en lista över alla språk i SQL Server (T-SQL)

Här är ett par sätt att returnera information om alla språk i SQL Server. En metod använder en systemkompatibilitetsvy, den andra metoden exekverar en systemlagrad procedur. Båda metoderna ger samma resultat.

syslanguages Systemkompatibilitetsvy

sys.syslanguages systemkompatibilitetsvyn returnerar information om alla språk i SQL Server. Den returnerar information som språknamnet, dess alias, dess datumformat och till och med namnen på månaderna, korta månader, dagar, etc.

Som med alla vyer kan du bara välja de kolumner du är intresserad av. Så om du bara vill ha en lista med språknamn eller alias kan du välja just dessa kolumner.

Så här väljer du alla språk och deras alias i SQL Server:

SELECT name, alias
FROM sys.syslanguages;

Och här är resultatet jag får i 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 Systemlagrad procedur

Alternativt kan du använda sp_helplanguage systemlagrad procedur. Denna lagrade procedur returnerar information om alla språk i SQL Server, eller om ett visst språk om ett är angivet.

Den returnerar faktiskt sin data från sys.syslanguages kompatibilitetsvy som nämns ovan.

För att specificera ett språk skickar du bara språknamnet eller aliaset till den lagrade proceduren när du anropar det. Om inget språk anges returneras alla språk.

Här är ett exempel på att returnera information om ett visst språk:

EXEC sp_helplanguage Swedish;

Resultat (med vertikal utdata):

-[ 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

Och här är vad du skulle göra om du vill att alla språk ska returneras:

EXEC sp_helplanguage;

I SQL Server 2017 returnerar detta 34 språk med tillhörande information (ganska lång lista). Lyckligtvis skapade jag tidigare en separat artikel som listar alla 34 språk och deras datumformat i SQL Server 2017.


  1. 4 sätt lagerdatabaser gynnar detaljhandeln

  2. Django :Bordet finns inte

  3. Lista alla funktioner i Oracle Database

  4. Webbplats nere och Twitter-flöde