आप पुराने IDEs
एक डीबीए के रूप में के बारे में सही हैं, एसक्यूएल सर्वर एंटरप्राइज़ प्रबंधक (SQL सर्वर 2000 और 7.0) का उपयोग कर अनुमतियाँ ठीक करने की कोशिश है, यह पूरा मैथुन अनुमतियाँ देखने की कोशिश कर रहा था। यदि आपके पास यूएफएन या यूएसपी या वीडब्ल्यू था तो जीयूआई ने डेटा प्रस्तुत करने के कारण चीजों को समूहबद्ध करना आसान हो गया।
यह कहकर कि, यदि आपके पास SELECT * FROM Thing
है, तो चीज क्या है? एक दृश्य या एक टेबल? यह आपके लिए डेवलपर के रूप में काम कर सकता है लेकिन तैनात होने पर यह क्रैश हो जाएगा क्योंकि आप तालिका पर अनुमति नहीं देते हैं: केवल विचार या procs। निश्चित रूप से vwThing
आपके रक्तचाप को नीचे रखेगा ...?
यदि आप स्कीमा का उपयोग करते हैं, तो यह अप्रासंगिक हो जाता है। आप अपनी वस्तुओं को "नामस्थान" कर सकते हैं।उदाहरण के लिए, अन्य स्कीमा में "डेटा" में तालिकाओं और अन्य वस्तुओं के ग्राहक प्रति जैसे WebGUI
संपादित करें:
समारोह। आपके पास टेबल मूल्यवान और स्केलर फ़ंक्शन हैं। यदि आप कोड "VerbNoun" अवधारणा के साथ चिपके रहते हैं, तो आप कैसे जानते हैं कि बिना किसी अन्य सुराग के कौन सा है। (बेशक, यह भी हो सकता है नहीं क्योंकि वस्तु नाम अद्वितीय हैं)
SELECT dbo.GetName() FROM MyTable
SELECT * FROM dbo.GetName()
आप एक तालिका मूल्यवान समारोह सूचित करने के लिए एक बहुवचन का उपयोग करते हैं, यह यकीनन बदतर
SELECT dbo.GetName() FROM MyTable
SELECT * FROM dbo.GetNames()
है जबकि यह कम अस्पष्ट है , हालांकि कुछ लोगों के लिए आक्रामक ;-)
SELECT dbo.sfnGetName() FROM MyTable
SELECT * FROM dbo.tfnGetName()
स्कीमा के साथ। और कोई नाम अस्पष्टता नहीं है।
SELECT ScalarFN.GetName() FROM MyTable
SELECT * FROM TableFN.GetName()
आपकी "कोई अन्य भाषा" टिप्पणी लागू नहीं होती है। एसक्यूएल सी #, जावा, एफ #, एडीए (ओके, पीएल/एसक्यूएल हो सकता है) की तरह संरचित नहीं है, वीबीए, जो भी हो: कोई ऑब्जेक्ट या नेमस्पेस पदानुक्रम नहीं है। नहीं Object.DoStuff
विधि सामान।
एक उपसर्ग केवल आपके समझदार रखने के लिए ...
हां, मैं विचारों पर सहमत हूं कि यह उपयोगी है। मैं विशेष रूप से कार्यों के बारे में पूछ रहा हूँ। धन्यवाद। – AaronLS
मैं सी जैसी भाषाओं की भीड़ के साथ और सोच रहा था, जहां आपके पास एक ऐसा कार्य हो सकता है जो किसी ऑब्जेक्ट से जुड़ा न हो, फिर भी यह स्पष्ट रूप से उपयोग के संदर्भ से एक कार्य है। लेकिन किसी भी तरह, तालिका-मूल्यवान बनाम स्केलर-मूल्यवान के बारे में अच्छा बिंदु, जिसका अर्थ है कि एक ही एफएन_ उपसर्ग अकेले पूरा करता है, वास्तव में क्या आवश्यक है, यदि यह परिदृश्य चिंता का विषय है, तो आपके द्वारा प्रदर्शित किए गए दो अलग-अलग उपसर्ग हैं। – AaronLS
@AaronLS: सी भी एक उदाहरण हो सकता है। एसक्यूएल अधिकांश क्लाइंट भाषाओं की तरह नहीं है और "पारंपरिक" धारणाएं लागू नहीं हो सकती हैं। मैं यह नहीं कह रहा हूं कि यह समझ में आता है या अच्छा है, लेकिन यह आपके कोड का ट्रैक रखने के लिए उपयोगी है। हम सभी कार्यों FWIW के लिए एक स्कीमा का उपयोग करते हैं। हम उनके क्रियाओं से अलग कार्यों को अलग करते हैं। "कैल्क" = स्केलर, "गेट" = टेबल इत्यादि – gbn