SQL सर्वर में वर्तमान में उपयोग की जा रही भाषा को प्राप्त करने के कई तरीके हैं।
वर्तमान सत्र की भाषा अक्सर लॉगिन के लिए डिफ़ॉल्ट भाषा होगी, लेकिन जरूरी नहीं कि हमेशा ऐसा ही हो। एक उपयोगकर्ता सत्र के दौरान वर्तमान भाषा बदल सकता है।
साथ ही, SQL सर्वर के कुछ अंतर्निहित फ़ंक्शन एक तर्क को स्वीकार करते हैं जो आपको उस विशिष्ट क्वेरी के लिए एक भाषा निर्दिष्ट करने की अनुमति देता है।
यह आलेख आपको दिखाता है कि वर्तमान में उपयोग की जा रही भाषा को कैसे वापस किया जाए।
@@LANGUAGE
@@LANGUAGE
कॉन्फ़िगरेशन फ़ंक्शन विशेष रूप से वर्तमान में उपयोग की जा रही भाषा का नाम वापस करने के लिए बनाया गया है।
यहां उपयोग का एक उदाहरण दिया गया है।
SELECT @@LANGUAGE;
परिणाम:
us_english
यह मेरे लॉगिन के लिए डिफ़ॉल्ट भाषा है।
मेरे सत्र के दौरान भाषा बदलने, फिर @@LANGUAGE
. चलाने का एक उदाहरण यहां दिया गया है फिर से।
SET LANGUAGE British;
SELECT @@LANGUAGE;
परिणाम:
British
डीबीसीसी उपयोगकर्ता विकल्प
DBCC USEROPTIONS
आपको कुछ अन्य कॉन्फ़िगरेशन विकल्पों के साथ, वर्तमान में उपयोग की जा रही भाषा प्राप्त करने की अनुमति भी देता है।
DBCC USEROPTIONS;
परिणाम:
+-------------------------+----------------+ | Set Option | Value | |-------------------------+----------------| | textsize | -1 | | language | British | | dateformat | dmy | | datefirst | 1 | | lock_timeout | 5000 | | quoted_identifier | SET | | arithabort | SET | | ansi_null_dflt_on | SET | | ansi_warnings | SET | | ansi_padding | SET | | ansi_nulls | SET | | concat_null_yields_null | SET | | isolation level | read committed | +-------------------------+----------------+
मैंने पिछले उदाहरण के तुरंत बाद उस प्रश्न को चलाया और इसलिए यह अभी भी ब्रिटिश को भाषा के रूप में लौटाता है।
यह भी ध्यान दें कि भाषा परोक्ष रूप से dateformat
. को प्रभावित करती है और datefirst
मूल्य। us_english
. का उपयोग करते समय उन मानों के लिए डिफ़ॉल्ट मान mdy
है और 7
क्रमशः।
अगर मैं भाषा को वापस us_English
. में बदल दूं और चलाएँ DBCC USEROPTIONS
फिर से, आप देखेंगे कि dateformat
और datefirst
सेटिंग्स यूएस प्रारूप में वापस आ जाती हैं।
SET LANGUAGE us_English; ....... DBCC USEROPTIONS; Time: 0.740s Changed language setting to us_english. +-------------------------+----------------+ | Set Option | Value | |-------------------------+----------------| | textsize | -1 | | language | us_english | | dateformat | mdy | | datefirst | 7 | | lock_timeout | 5000 | | quoted_identifier | SET | | arithabort | SET | | ansi_null_dflt_on | SET | | ansi_warnings | SET | | ansi_padding | SET | | ansi_nulls | SET | | concat_null_yields_null | SET | | isolation level | read committed | +-------------------------+----------------+
हालांकि, यदि आपको आवश्यकता हो तो आप हमेशा दिनांक प्रारूप को भाषा में अलग से सेट कर सकते हैं।
sys.dm_exec_requests
sys.dm_exec_requests
दृश्य आपको किसी विशिष्ट उपयोगकर्ता प्रक्रिया के लिए भाषा पुनर्प्राप्त करने में सक्षम बनाता है। इस मामले में हम उपयोग कर सकते हैं @@SPID
वर्तमान उपयोगकर्ता प्रक्रिया निर्दिष्ट करने के लिए।
SELECT r.language
FROM master.sys.dm_exec_requests r
WHERE r.session_id = @@SPID;
परिणाम:
us_english