SQL सर्वर में तिथियों के साथ काम करते समय, विभिन्न दिनांक स्वरूपों के साथ ट्रिप करना आसान होता है। उदाहरण के लिए, यूएस का कोई व्यक्ति 01/07/2018 . पर विचार कर सकता है 7 जनवरी का मतलब है, लेकिन यूके का कोई व्यक्ति इसे 1 जुलाई मान सकता है।
कई मामलों में आप शायद यह भी नहीं जानते होंगे कि किसी विशेष भाषा/संस्कृति के लिए किस तिथि प्रारूप का उपयोग किया जाता है। सौभाग्य से, SQL सर्वर इस जानकारी को अपने संसाधन डेटाबेस में संग्रहीत करता है, और आप नीचे दी गई दो विधियों में से किसी एक का उपयोग करके इसे पुनः प्राप्त कर सकते हैं।
विधि 1: sp_helpभाषा संग्रहित प्रक्रिया
sp_helplanguage
संग्रहीत कार्यविधि किसी विशेष वैकल्पिक भाषा या SQL सर्वर की सभी भाषाओं के बारे में जानकारी लौटाती है। इसमें संबंधित भाषा से संबद्ध भाषा का नाम, उसका उपनाम, और दिनांक स्वरूप, और महीने के नाम शामिल हैं।
SQL सर्वर में सभी भाषाओं के लिए जानकारी वापस करने के लिए, निम्नलिखित चलाएँ:
EXEC sp_helplanguage;
यह काफी बड़ा परिणाम सेट देता है। जब मैं इसे SQL सर्वर 2017 के अपने उदाहरण पर चलाता हूं तो मुझे मिलने वाली भाषाओं की पूरी सूची यहां दी गई है।
यदि आप नहीं चाहते कि सभी भाषाएँ वापस आ जाएँ, तो आप इसे एक विशिष्ट भाषा तक सीमित कर सकते हैं।
यहां एक उदाहरण दिया गया है:
EXEC sp_helplanguage Spanish;
जब मैं इसे mssql-cli में चलाता हूं तो यह परिणाम होता है:
-[ RECORD 1 ]------------------------- langid | 5 dateformat | dmy datefirst | 1 upgrade | 0 name | Español alias | Spanish months | Enero,Febrero,Marzo,Abril,Mayo,Junio,Julio,Agosto,Septiembre,Octub shortmonths | Ene,Feb,Mar,Abr,May,Jun,Jul,Ago,Sep,Oct,Nov,Dic days | Lunes,Martes,Miércoles,Jueves,Viernes,Sábado,Domingo lcid | 3082 msglangid | 3082
आप @@LANGUAGE
. का भी उपयोग कर सकते हैं आपकी वर्तमान भाषा जो भी हो, उसे सीमित करने के लिए। उदाहरण:
EXEC sp_helplanguage @@LANGUAGE;
परिणाम:
-[ RECORD 1 ]------------------------- langid | 0 dateformat | mdy datefirst | 7 upgrade | 0 name | us_english alias | English months | January,February,March,April,May,June,July,August,September,Octobe shortmonths | Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec days | Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday lcid | 1033 msglangid | 1033
विधि 2:sys.syslanguages देखें
भाषा की जानकारी वापस करने का दूसरा तरीका सीधे sys.syslanguages
. पर जाकर है सिस्टम संगतता दृश्य। यह विचार है कि उपरोक्त संग्रहीत कार्यविधि से इसकी जानकारी प्राप्त होती है।
इस दृश्य को क्वेरी करने का तरीका यहां दिया गया है:
SELECT * FROM sys.syslanguages;
आप WHERE
. जोड़कर इसे किसी भाषा तक सीमित भी कर सकते हैं खंड:
SELECT * FROM sys.syslanguages WHERE name = 'Español';
ध्यान दें कि प्रत्येक भाषा प्रविष्टि का एक नाम और एक उपनाम होता है। उपनाम का उपयोग करने के लिए उपरोक्त क्वेरी को फिर से लिखा जा सकता है:
SELECT * FROM sys.syslanguages WHERE alias = 'Spanish';
जैसा कि आप शायद बता सकते हैं, संग्रहीत प्रक्रिया (पहला विकल्प) का उपयोग करना बहुत आसान है, लेकिन यह दृश्य आसान हो सकता है यदि आप केवल स्तंभों का एक सबसेट वापस करना चाहते हैं।
उदाहरण के लिए:
SELECT name, alias, dateformat FROM sys.syslanguages WHERE alias = 'Spanish';
परिणाम:
+---------+---------+--------------+ | name | alias | dateformat | |---------+---------+--------------| | Español | Spanish | dmy | +---------+---------+--------------+