नीचे तीन तरीके हैं जिनसे हम SQL सर्वर में डेटाबेस की सूची वापस करने के लिए T-SQL का उपयोग कर सकते हैं।
sp_databases
संग्रहित प्रक्रिया
SQL सर्वर में, sp_databases
संग्रहीत कार्यविधि उन डेटाबेस को सूचीबद्ध करती है जो या तो SQL सर्वर की आवृत्ति में रहते हैं या डेटाबेस गेटवे के माध्यम से पहुँच योग्य हैं।
इस प्रक्रिया को क्रियान्वित करने का एक उदाहरण यहां दिया गया है:
sp_databases;
उदाहरण परिणाम:
+-----------------------+-----------------+-----------+ | DATABASE_NAME | DATABASE_SIZE | REMARKS | |-----------------------+-----------------+-----------| | KrankyKranes | 16384 | NULL | | master | 6848 | NULL | | model | 16384 | NULL | | msdb | 79040 | NULL | | Music | 16384 | NULL | | NarrowNationExporters | 147456 | NULL | | tempdb | 24576 | NULL | | WideWorldImporters | 3575808 | NULL | | World | 81920 | NULL | +-----------------------+-----------------+-----------+
यदि कथन बैच में पहला नहीं है, तो आपको प्रक्रिया नाम को EXEC
के साथ उपसर्ग करना होगा या EXECUTE
।
तो निम्नलिखित तीन आदेश समतुल्य हैं:
sp_databases;
EXEC sp_databases;
EXECUTE sp_databases;
लेकिन पहले वाले का उपयोग केवल तभी किया जा सकता है जब यह बैच में पहला स्टेटमेंट हो।
sys.databases
देखें
sys.databases
दृश्य में SQL सर्वर के उदाहरण में प्रति डेटाबेस एक पंक्ति होती है।
इस दृश्य को क्वेरी करने का एक उदाहरण यहां दिया गया है:
SELECT name
FROM sys.databases;
उदाहरण परिणाम:
+-----------------------+ | name | |-----------------------| | master | | tempdb | | model | | msdb | | Music | | KrankyKranes | | WideWorldImporters | | World | | NarrowNationExporters | +-----------------------+
इस दृश्य में बहुत सारे स्तंभ हैं, और आप इसे अन्य दृश्यों/तालिकाओं के साथ जोड़ सकते हैं, इसलिए जब आपको sp_databases
से अधिक जानकारी की आवश्यकता हो तो यह एक आदर्श विकल्प है। प्रक्रिया रिटर्न।
sys.sysdatabases
तालिका/दृश्य
sys.sysdatabases
sys.databases
. के बराबर है ।
इसलिए हम आसानी से sys.databases
swap को स्वैप कर सकते हैं उपरोक्त उदाहरण में sys.sysdatabases
. के लिए समान परिणाम प्राप्त करने के लिए:
SELECT name
FROM sys.sysdatabases;
परिणाम:
+-----------------------+ | name | |-----------------------| | master | | tempdb | | model | | msdb | | Music | | KrankyKranes | | WideWorldImporters | | World | | NarrowNationExporters | +-----------------------+
हालांकि, आपको इस विकल्प से बचना चाहिए।
यह SQL Server 2000 सिस्टम तालिका पश्चगामी संगतता के लिए एक दृश्य के रूप में वर्तमान SQL Server रिलीज़ में शामिल है। इसे Microsoft SQL सर्वर के भविष्य के संस्करण में हटा दिया जाएगा। Microsoft अनुशंसा करता है कि हम नए विकास कार्य में इस सुविधा का उपयोग करने से बचें, और वर्तमान में इस सुविधा का उपयोग करने वाले अनुप्रयोगों को संशोधित करने की योजना बनाएं।
इसलिए यदि आप एक पुरानी स्क्रिप्ट का सामना करते हैं जो sys.sysdatabases
. का संदर्भ देती है , आपको इसे sys.databases
. में बदलने के बारे में सोचना चाहिए ।
लिंक किए गए सर्वर
यदि आपको किसी लिंक किए गए सर्वर से डेटाबेस की सूची प्राप्त करने की आवश्यकता है, तो sp_catalogs
. का उपयोग करें लिंक किए गए सर्वर के नाम से गुजरते समय।
अधिक जानकारी और उदाहरणों के लिए SQL सर्वर में लिंक किए गए सर्वर से सभी डेटाबेस की सूची देखें।