MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

MongoDB не позволява използването на „.“ в ключ

Можете да зададете check_keys до False според източник :

 test.insert(d,check_keys=False)


 def insert(self, doc_or_docs, manipulate=True,
           safe=None, check_keys=True, continue_on_error=False, **kwargs):

Наистина работи:

In [28]: d = {'.aaa' : '.bbb'}

In [29]: test.insert(d,check_keys=False)
Out[29]: ObjectId('54ea604bf9664e211e8ed4e6')

Документационният низ гласи:

Изглежда можете да използвате всеки знак освен само двата $ или . така че водещо долно черта или друг знак би било добре и вероятно по-добър вариант.

В често задаваните въпроси има информация за бягство :

И често задаваният въпрос за означение с точка обяснява защо се използва . не е добра идея:




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongoosejs опресняват документ

  2. Удостоверяването на командния ред на обвивката на MongoDB е неуспешно

  3. MongoDB $dateToString

  4. Генериране на структура за агрегиране

  5. Управление на множество технологии за бази данни с ClusterControl