2010-07-01 17 views
5

मैंने हमेशा एक प्रासंगिक (मेरे लिए) के बारे में सोचा लेकिन मेरे साथ काम करने वाले सभी संबंधित डेटाबेस की मौजूद विशेषता नहीं है: नामस्थान तालिकाओं की असंभवता।डेटाबेस तालिका नेमस्पेसिंग मौजूद है?

MySQL में, उदाहरण के लिए, आप डेटाबेस नाम के साथ तालिका को पूरी तरह अर्हता प्राप्त कर सकते हैं, जैसे dbname.tablename, डेटाबेस "उपसर्ग" या "नेमस्पेस" के रूप में कार्यरत डेटाबेस के साथ। हालांकि, यह सुविधा यहां रुकती है, और आपको बहुत दूर नहीं लेती है। नेमस्पेस समर्थन आपको dbname.namespace.table जैसे वाक्यविन्यास होने की संभावना प्रदान करेगा। आप इस तरह के रूप में (एक ब्लॉग के लिए)

db.userdata.logininfo 
db.userdata.preferences 
db.postdata.content 
db.postdata.acls 

या

db.blog.whatever 
db.wiki.whatever 
db.common.auth 

यह वही डेटाबेस (जैसे सेटअप के सभी लाभों का शोषण) के भीतर रहने की अनुमति होगी, जबकि विभिन्न नामस्थान, में संबंधित टेबल समूह सकता है साथ ही एक अधिक लचीला और स्वयं दस्तावेज पर्यावरण प्रदान करते हैं। अधिकांश समय, हालांकि, मैंने पाया कि तालिका के नाम में अंडरस्कोर का उपयोग इस उद्देश्य को एक स्पष्ट कार्यवाही के रूप में करने के लिए किया जाता है।

मेरे प्रश्न हैं: क्या इस सुविधा के साथ डीबीएमएस मौजूद है (शायद एक अलग नाम के साथ)? क्या यह डेटाबेस डिजाइन प्रथाओं में समर्थन देने के लिए पर्याप्त महत्वपूर्ण नहीं माना जाता है?

उत्तर

0

एमएस एसक्यूएल सर्वर (2005+) में स्कीमा हैं जिन्हें आप नामस्थान के रूप में व्याख्या कर सकते हैं (AdventureWorks नमूने देखें)।

ओरेकल टेबल में हमेशा उपयोगकर्ता के स्वामित्व होते हैं, लेकिन अन्य उपयोगकर्ताओं को टेबल एक्सेस प्रदान की जा सकती है, ताकि आप समान कार्यक्षमता प्राप्त कर सकें।

आप "नेमस्पेस.नाम" नामकरण स्कीमा का उपयोग करने के लिए उद्धृत पहचानकर्ता (एमएस [], ओरेकल "") का भी उपयोग कर सकते हैं।

3

मुझे विश्वास है कि इसे SQL Server में स्कीमा कहा जाता है। यह SQL सर्वर 2005 में पेश किया गया था। टेबल्स स्कीमा से संबंधित हैं, और owner.schema.tablename जैसे डॉट नोटेशन के माध्यम से संदर्भित हैं, उदाहरण के लिए dbo.HumanResources.Employee

Here is one of many explanations AdventureWorks में स्कीमा का, जो SQL सर्वर के लिए आमतौर पर उपयोग किया जाने वाला नमूना डेटाबेस है।

अब जब आप जानते हैं कि SQL सर्वर का नाम है, तो आप इसके बारे में बहुत सारी जानकारी पा सकते हैं। यहां इस सुविधा के लाभ में कुछ अंतर्दृष्टि प्रदान करने वाले कुछ लेख हैं:

Benefit from SQL Server 2005's new schema convention

Security Enhancements in SQL Server 2005: Schema

0

मैं डेटाबेस तालिकाओं पर एक पदानुक्रमित नाम स्थान कभी नहीं देखा है, लेकिन आप एसक्यूएल सर्वर में स्कीमा का उपयोग कर सकते 2005+ ऐसा करने के लिए। अन्य डीबीएमएस प्लेटफार्मों में भी इसी तरह की संरचनाएं मौजूद हैं।

ओरेकल में संग्रहित प्रक्रिया कोड (पैकेज कहा जाता है) के लिए एक मॉड्यूल स्कोप है जो आपको कोड के लिए मॉड्यूल स्तर नाम रिक्त स्थान देता है। टी-एसक्यूएल में कुछ भी बराबर नहीं है, हालांकि संग्रहित प्रक्रियाएं स्कीमा में रह सकती हैं।

संबंधित मुद्दे