आप जान सकते हैं कि जब आप SQL सर्वर से कनेक्ट होते हैं, तो उस सत्र की भाषा आमतौर पर आपके लॉगिन द्वारा निर्धारित की जाती है। जब कोई लॉगिन बनाया जाता है, तो उसे एक डिफ़ॉल्ट भाषा असाइन की जाती है।
सत्र की भाषा दिनांक समय . निर्धारित करती है प्रारूप और सिस्टम संदेश।
जबकि आप निश्चित रूप से लॉगिन के लिए डिफ़ॉल्ट भाषा बदल सकते हैं, यदि आपको आवश्यकता हो तो आप सत्र के भीतर डिफ़ॉल्ट भाषा को ओवरराइड भी कर सकते हैं। यदि आवश्यक हो तो आप भाषाओं के बीच आगे और पीछे टॉगल कर सकते हैं। या आप दो अलग-अलग कनेक्शन भी खोल सकते हैं और उनमें से प्रत्येक के लिए एक अलग भाषा लागू कर सकते हैं।
यह लेख बताता है कि एक सत्र में भाषा कैसे बदलें।
भाषा सेट करें
SET LANGUAGE
कथन आपको वर्तमान सत्र के लिए भाषा परिवेश सेट करने की अनुमति देता है।
यहाँ एक उदाहरण है।
SET LANGUAGE British;
यह वर्तमान भाषा को ब्रिटिश के लिए निर्धारित करता है।
मैं इसे निम्नलिखित क्वेरी से सत्यापित कर सकता हूं।
SELECT @@LANGUAGE;
परिणाम:
British
दिनांक प्रारूप
आपको पता होना चाहिए कि एक सत्र के भीतर भाषा बदलने से तारीख का प्रारूप भी बदल जाता है।
इसे स्पष्ट करने के लिए यहां एक और प्रश्न दिया गया है।
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
dmy
है और datefirst
है 1
. यह ब्रिटिश तिथि प्रारूप के अनुरूप है।
अगर मैं भाषा को us_english
. में बदल दूं तो क्या होगा ।
SET LANGUAGE us_english; ....... DBCC USEROPTIONS; Time: 0.738s 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 | +-------------------------+----------------+
ध्यान दें कि यूएस दिनांक स्वरूपण का पालन करने के लिए दिनांक प्रारूप को निहित रूप से बदल दिया गया है।
यदि आपको यह समस्या आती है, तो आप भाषा बदले बिना हमेशा दिनांक स्वरूप बदल सकते हैं।
भाषा को क्वेरी स्तर पर सेट करें
कुछ फ़ंक्शन एक "संस्कृति" तर्क को स्वीकार करते हैं जो आपको केवल उस क्वेरी के लिए उपयोग करने के लिए एक भाषा निर्दिष्ट करने की अनुमति देता है। दूसरे शब्दों में, आप अपने वर्तमान सत्र की भाषा को बदलने की आवश्यकता के बिना, एक प्रश्न के भीतर भाषा तदर्थ बदल सकते हैं।
यहाँ एक उदाहरण है।
SET LANGUAGE us_english;
SELECT
FORMAT(GETDATE(), 'd') AS [My Default],
FORMAT(GETDATE(), 'd', 'en-GB') AS [British],
FORMAT(GETDATE(), 'd', 'de-DE') AS [German];
परिणाम:
+--------------+------------+------------+ | My Default | British | German | |--------------+------------+------------| | 3/29/2020 | 29/03/2020 | 29.03.2020 | +--------------+------------+------------+
भाषाओं की सूची प्राप्त करें
SQL सर्वर में उपलब्ध भाषाओं की सूची प्राप्त करने के लिए आप निम्न क्वेरी चला सकते हैं।
EXEC sp_helplanguage;
आप इसे भाषा के नाम या उपनाम के साथ जोड़कर किसी विशिष्ट भाषा तक सीमित भी कर सकते हैं।
EXEC sp_helplanguage Italian;