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

Филтрите на масива Mongodb 3.6.0-rc3 не работят?

Пишете ли това в robomongo? Изглежда така! Ако е така, няма да работи. Прочетете бележката ми за актуализиране на вложен масив с MongoDB, където казвам, че това не работи в "по-стара обвивка" или нещо базирано на нея (коя robomongo е базирана на обвивка компилация) поради начина, по който в момента се прилагат помощните методи на обвивката:

ЗАБЕЛЕЖКА Донякъде иронично, тъй като това е посочено в аргумента "опции" за .update() и подобно на методите, синтаксисът обикновено е съвместим с всички последни версии на драйвери.

Това обаче не е вярно за mongo shell, тъй като начина, по който методът е внедрен там ( "по ирония на съдбата за обратна съвместимост" ), arrayFilters аргументът не се разпознава и премахва от вътрешен метод, който анализира опциите, за да осигури "обратна съвместимост" с предишни версии на сървъра на MongoDB и "наследен" .update() Синтаксис на извикване на API.

Така че, ако искате да използвате командата в mongo shell или други „базирани на обвивка“ продукти (по-специално Robo 3T) имате нужда от най-новата версия от клона за разработка или от производствената версия от 3.6 или по-нова версия.

Така че, ако искате да "играете" с кандидата за пускане, използвайте или пакетния mongo shell с тази версия или просто стартирайте кода си през всеки стандартен драйвер.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Опции за конфигурация по време на изпълнение на ClusterControl

  2. Клонирайте колекция в MongoDB

  3. Оптимизация на заявките на MongoDB

  4. Десериализиране на полиморфни типове с MongoDB C# драйвер

  5. DB с най-добра производителност на вмъквания/сек?