2012-03-18 14 views
21

मैंने निश्चित रूप से यह पता लगाया। और स्पेस की अनुमति नहीं है। क्या अन्य वर्जित पात्र हैं?MongoDB फ़ील्ड नामों में किन पात्रों की अनुमति नहीं है?

+0

इसी प्रकार प्रश्न: http://stackoverflow.com/a/797 6235/311220 – Acorn

+8

स्पेस की अनुमति है। –

उत्तर

35

आप फ़ील्ड नाम में किसी भी (यूटीएफ 8) चरित्र का उपयोग कर सकते हैं जो विशेष नहीं है ("।" है, या "$" से शुरू होता है)।

https://jira.mongodb.org/browse/SERVER-3229

https://stackoverflow.com/a/7976235/311220

यह आम तौर पर हालांकि अंडरस्कोर से लोअरकेस अक्षरांकीय साथ रहना सबसे अच्छा है।

+1

उत्पाद विनिर्देशों के बारे में क्या? यदि फ़ील्ड नाम वास्तविक विनिर्देश वर्णन थे तो क्या यह डिजाइन को बहुत आसान नहीं करेगा? (उदाहरण के लिए '' स्क्रीन साइज ': '26 इंच'') – Dor

+3

जरूरी नहीं है, @ डोर - आप अपने यूआई और अपने डेटाबेस के बीच कुछ लचीलापन चाहते हैं (ग्राहक के रूप में इतना कुछ नहीं है: "रुको, मैं इसे चाहता हूं 'डिस्प्ले साइज' कहें, 'स्क्रीन साइज' नहीं) "। और निश्चित रूप से, पहेली का पूरा अंतर्राष्ट्रीयकरण हिस्सा है, जिसके लिए भी decoupling की आवश्यकता है। वैसे, जब एकोर्न कहते हैं 'कोई यूटीएफ 8', जिसमें रिक्त स्थान शामिल हैं, तो यदि आप चाहें तो आप बिल्कुल ठीक हैं। –

+0

यह 'उपयोगकर्ता विवरण' जैसे ऊंट-आधारित शब्दों को कैसे संभालेगा? क्या यह मान्य है? –

1

कुछ और देखने के लिए कुछ और तथ्य यह है कि आप "क्वेरी" नामक एक संपत्ति नाम बना सकते हैं लेकिन उसके बाद क्वेरी ऑपरेटर का उपयोग कर सकते हैं, जिससे बड़ी संख्या में प्रश्न पूछने के लिए यह अजीब हो जाता है।

उदाहरण:

नाम के एक संपत्ति के साथ

सम्मिलित दस्तावेज़

db.coll.insert({ query: 'foo' }); 

समानता क्वेरी काम करता है:

db.coll.findOne({ query: 'foo' });  

बराबर नहीं ($ ne) नहीं करता है:

db.coll.findOne({ query: { $ne: 'bar' } }); 
+0

अच्छा बिंदु देखें। लेकिन आप अभी भी उस क्वेरी को 'db.coll.findOne ({query: {query: {$ ne: 'bar'}}} के रूप में कर सकते हैं)'। तो यह असंभव नहीं है, लेकिन यह अजीब है। – JohnnyHK

+0

धन्यवाद, मुझे नहीं पता था कि जब तक मैंने इसे पोस्ट नहीं किया तब तक असंभव नहीं था। निश्चित रूप से अधिक अजीब। – Dave

+1

3.2 के रूप में (2015 के अंत में जारी) यह तय किया गया था। –

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