मैंने इसे इस तरह देखा है:

EXEC master.dbo.xp_cmdshell

master किससे संबंधित है?

अपडेट करें
और क्यों कभी-कभी दो बिंदुओं का पालन किया जाता है:

 master..

आम तौर पर हम master.dbo. का प्रयोग करते हैं, क्या मैं सही हूं, तो कुछ लोग master.. क्यों लिखते हैं?

8
edgarmtze 7 मार्च 2011, 08:13

4 जवाब

सबसे बढ़िया उत्तर

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

मास्टर नाम उस डेटाबेस को संदर्भित करता है जिसमें आपके सर्वर इंस्टेंस की भिन्न स्कीमा होती है।

3
Pierre-Alain Vigeant 7 मार्च 2011, 08:15

Transact SQL में, किसी भी वस्तु के लिए पूर्णतः योग्य पथ है:

server_name.db_name.owner.object parm1, ...
  • बिंदु चार घटकों को अलग करते हैं
  • पहले तीन घटकों में डिफ़ॉल्ट हैं:
    • वर्तमान सर्वर
    • वर्तमान डेटाबेस
    • dbo (डेटाबेस स्वामी) (जो साझा तालिकाओं का स्वामी होना चाहिए)

master सिस्टम डेटाबेस है जो सर्वर को परिभाषित करता है।

एमएस के लिए, चूंकि सिस्टम स्टोर किए गए प्रोक्स अभी भी master में स्थित हैं, निम्नलिखित पूरी तरह से बेमानी है:

EXEC master.dbo.stored_proc_name parm1, ...
EXEC stored_proc_name parm1, ...
EXEC
stored_proc_name parm1, ...

master.. और master.dbo. में कोई अंतर नहीं है। सिस्टम संग्रहीत प्रोसेस को संबोधित करते समय वे दोनों अनावश्यक हैं।

3
PerformanceDBA 7 मार्च 2011, 11:58

मास्टर मास्टर डेटाबेस को संदर्भित करता है (यह एक सिस्टम डेटाबेस है)।

SSMS में: डेटाबेस -> सिस्टम डेटाबेस -> मास्टर

0
judda 7 मार्च 2011, 08:15