Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर (T-SQL) में सभी नए लॉगिन के लिए डिफ़ॉल्ट भाषा कैसे सेट करें

हर बार जब आप SQL सर्वर में एक नया लॉगिन बनाते हैं, तो आपके पास उस लॉगिन के लिए एक डिफ़ॉल्ट भाषा निर्दिष्ट करने का विकल्प होता है। यदि आप ऐसा नहीं करते हैं, तो लॉगिन डिफ़ॉल्ट भाषा सर्वर कॉन्फ़िगरेशन विकल्प में निर्दिष्ट डिफ़ॉल्ट भाषा का उपयोग करेगा।

यह आलेख दर्शाता है कि T-SQL का उपयोग करके SQL सर्वर में डिफ़ॉल्ट भाषा सर्वर कॉन्फ़िगरेशन विकल्प कैसे सेट करें।

सबसे पहले, सर्वर की डिफ़ॉल्ट भाषा सेटिंग जांचें

इससे पहले कि हम आगे बढ़ें और कुछ भी बदलें, हमें यह देखना चाहिए कि वर्तमान सेटिंग्स क्या हैं।

sp_configure संग्रहीत कार्यविधि आपको वर्तमान सर्वर के लिए वैश्विक कॉन्फ़िगरेशन सेटिंग्स को देखने या बदलने की अनुमति देती है।

सभी कॉन्फ़िगरेशन विकल्पों को वापस करने के लिए आप बिना किसी तर्क को पारित किए इस संग्रहीत कार्यविधि को निष्पादित कर सकते हैं। इस तरह:

EXEC sp_configure;

हालांकि, यह काफी बड़ा परिणाम सेट देता है।

यह देखते हुए कि हम केवल डिफ़ॉल्ट भाषा सेटिंग में रुचि रखते हैं, हम निम्नलिखित कोड चला सकते हैं:

EXEC sp_configure @configname='default language';

और मेरे परीक्षण वातावरण पर, जो निम्नलिखित देता है:

+------------------+-----------+-----------+----------------+-------------+
| name             | minimum   | maximum   | config_value   | run_value   |
|------------------+-----------+-----------+----------------+-------------|
| default language | 0         | 9999      | 0              | 0           |
+------------------+-----------+-----------+----------------+-------------+

हम जिन मुख्य मूल्यों में रुचि रखते हैं, वे हैं config_value और run_value . इस मामले में, दोनों मान 0 हैं , जो us_english . की भाषा आईडी है ।

हम निम्नलिखित कोड का उपयोग करके उन्हें बदल सकते हैं:

EXEC sp_configure 'default language', 5;
RECONFIGURE;

परिणाम:

Configuration option 'default language' changed from 0 to 5. Run the RECONFIGURE statement to install. 

ध्यान दें कि config_value . के मान और run_value स्वचालित रूप से समकक्ष नहीं हैं। sp_configure . का उपयोग करके कॉन्फ़िगरेशन सेटिंग अपडेट करने के बाद , आपको अपडेट करना होगा run_value RECONFIGURE . का उपयोग करके या RECONFIGURE WITH OVERRIDE . यह देखते हुए कि हमने इस उदाहरण में पहले ही ऐसा कर लिया है, हम जाने के लिए तैयार हैं।

इसलिए जब हम फिर से सेटिंग्स की जाँच करते हैं, तो हम नए मान देख सकते हैं:

EXEC sp_configure @configname='default language';

परिणाम:

+------------------+-----------+-----------+----------------+-------------+
| name             | minimum   | maximum   | config_value   | run_value   |
|------------------+-----------+-----------+----------------+-------------|
| default language | 0         | 9999      | 5              | 5           |
+------------------+-----------+-----------+----------------+-------------+

इस मामले में, हमने मानों को 5 . में बदल दिया है , जो Español . के लिए भाषा आईडी है (स्पेनिश)।

आप sys.configurations . को भी क्वेरी कर सकते हैं यदि आप चाहें तो सर्वर कॉन्फ़िगरेशन विकल्पों के मान वापस करने के लिए देखें।

भाषा आईडी कैसे खोजें

यदि आप उस भाषा की भाषा आईडी नहीं जानते हैं जिसमें आपको बदलने की आवश्यकता है, तो आप sp_helplanguage निष्पादित कर सकते हैं संग्रहीत प्रक्रिया। आप इसे बिना किसी तर्क के चला सकते हैं, जिस स्थिति में सभी भाषाएँ वापस आ जाएँगी, या आप एक भाषा का नाम या उपनाम प्रदान कर सकते हैं ताकि केवल वही भाषा वापस आ जाए।

यहां एक उदाहरण दिया गया है:

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

और हम देख सकते हैं कि स्पैनिश के लिए भाषा आईडी 5 . है . इसलिए sp_configure . को क्रियान्वित करते समय हम यही मान प्रदान करते हैं डिफ़ॉल्ट भाषा को स्पेनिश में बदलने के लिए।

इसलिए अब जब हम एक नया लॉगिन बनाते हैं, तो उसकी डिफ़ॉल्ट भाषा स्पेनिश होगी (जब तक कि हम लॉगिन बनाते समय स्पष्ट रूप से एक डिफ़ॉल्ट भाषा प्रदान नहीं करते)।

एक नया लॉगिन बनाएं - डिफ़ॉल्ट भाषा निर्दिष्ट किए बिना

तो चलिए एक डिफ़ॉल्ट भाषा निर्दिष्ट किए बिना एक नया लॉगिन बनाते हैं:

CREATE LOGIN Julio   
    WITH PASSWORD = 't35Tin9345!'

और अब उस लॉगिन के लिए डिफ़ॉल्ट भाषा जांचें:

SELECT default_language_name 
FROM master.sys.server_principals
WHERE name = 'Julio';

हमें निम्नलिखित परिणाम मिलते हैं:

+-------------------------+
| default_language_name   |
|-------------------------|
| Español                 |
+-------------------------+

चूंकि हमने इस लॉगिन के लिए एक डिफ़ॉल्ट भाषा निर्दिष्ट नहीं की है, यह सर्वर स्तर पर कॉन्फ़िगर की गई डिफ़ॉल्ट भाषा का उपयोग करता है।

एक नया लॉगिन बनाएं - एक डिफ़ॉल्ट भाषा के साथ

लेकिन अगर हम लॉगिन बनाते समय एक डिफ़ॉल्ट भाषा निर्दिष्ट करते हैं:

CREATE LOGIN Einstein   
    WITH PASSWORD = 't35Tin9345!',
    DEFAULT_LANGUAGE = German;

और फिर sys.server_principals query को क्वेरी करें फिर से:

SELECT default_language_name 
FROM master.sys.server_principals
WHERE name = 'Einstein';

हमें निम्नलिखित परिणाम मिलते हैं:

+-------------------------+
| default_language_name   |
|-------------------------|
| German                  |
+-------------------------+

इसलिए सर्वर कॉन्फ़िगरेशन का उपयोग केवल तभी किया जाता है जब आप व्यक्तिगत लॉगिन के लिए स्पष्ट रूप से एक डिफ़ॉल्ट भाषा निर्दिष्ट नहीं करते हैं।

ध्यान दें कि उपयोगकर्ता अपने सत्र में उपयोग की जाने वाली भाषा को बदल सकता है। सिर्फ इसलिए कि उनके पास एक डिफ़ॉल्ट भाषा है, इसका मतलब यह नहीं है कि वे इसके साथ फंस गए हैं। अधिक जानकारी के लिए, SQL सर्वर (T-SQL) में वर्तमान सत्र की भाषा प्राप्त करने के 3 तरीके और SQL सर्वर (T-SQL) में वर्तमान भाषा कैसे सेट करें देखें।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL क्वेरी ऑप्टिमाइज़ेशन - यह कैसे निर्धारित करें कि इसकी आवश्यकता कब और क्या है

  2. सबसे कठिन प्रश्नों पर सहायता के लिए सर्वश्रेष्ठ SQL सर्वर प्रदर्शन फ़ोरम

  3. गतिविधि मॉनिटर के माध्यम से डेटाबेस और उदाहरणों की निगरानी करें | SQL सर्वर प्रदर्शन समस्या निवारण -2

  4. TSQL - डेटाबेस में सभी तालिकाओं में कॉलम जोड़ें [कर्सर उदाहरण]

  5. सीमांकक पर आधारित टी-एसक्यूएल स्प्लिट स्ट्रिंग