फिर हम dbo के तहत प्रीफ़िक्स (स्कीमा) के बिना फ़ंक्शन को क्यों कह सकते हैं?
यूडीएफ पर पुस्तकें ऑनलाइन दस्तावेज़ से
स्केलर-मूल्यवान फ़ंक्शंस को लागू किया जा सकता है जहां स्केलर अभिव्यक्तियों का उपयोग किया जाता है। इसमें कंप्यूटेड कॉलम और CHECK बाधा परिभाषाएं शामिल हैं। स्केलर-मूल्यवान कार्यों को EXECUTE स्टेटमेंट का उपयोग करके भी निष्पादित किया जा सकता है। फ़ंक्शन के कम से कम दो-भाग नाम का उपयोग करके स्केलर-मूल्यवान कार्यों को लागू किया जाना चाहिए ।
तो यह मूल रूप से SQL सर्वर विकास टीम द्वारा निर्धारित प्रतिबंध है और मैं इसे काफी सही मानता हूं। यहां तक कि अगर यह किसी भी तरह की अनुमति है (सिर्फ बातचीत के लिए) मैं अभी भी स्कीमा उपसर्ग का उपयोग करूंगा।
मैं हमेशा स्कीमा नाम का उपयोग करने का समर्थन करता हूं, भले ही वह इसे जोड़ने के बिना काम करे। यह सबसे अच्छा अभ्यास है और सभी "गुड" डेवलपर्स इसका इस्तेमाल करते हैं, चाहे वह कितना भी बेमानी क्यों न हो।
दूसरे कारण जो मैं देख रहा हूं, डेटाबेस इंजन को सिस्टम फ़ंक्शन getdate ()
और उपयोगकर्ता परिभाषित कार्यों के बीच अंतर करने के लिए कुछ चाहिए । यदि आपको स्कीमा नाम के बिना फ़ंक्शन को कॉल करने की अनुमति दी जाती है तो डेटाबेस इंजन गेटडेट या सिस्टम GETDATE () फ़ंक्शन नामक उपयोगकर्ता के बीच अंतर कैसे करें।