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

Какъв е препоръчителният еквивалент на каскадно изтриване в MongoDB за N:M отношения?

Това, което правите, е най-добрият и оптимален начин да го направите в Mongo. Аз съм в подобна ситуация и след като преминах всички възможни реализации на модела за проектиране N:M, също стигнах до същото решение.

Очевидно това не е нещо mongodb, а по-скоро концепция на NoSQL, при която по-малко променящите се данни (курсове) могат да се съхраняват отделно. И тъй като изтриването на курс няма да бъде много честа операция, е достатъчно осъществимо, за да преминете през всички записи, за да го премахнете.

От друга страна, можете да оставите да бъде така, както е. В логиката на приложението си, просто игнорирайте стойностите на Courses в студентския документ, които изобщо нямат reference_id в документа на курса. Но в този случай трябва да се уверите, че стари изтрити Course_id не се използват повторно.

ИЛИ просто използвайте изтритите флагове в документа на курса и обработвайте всичко останало в логиката на приложението си.



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

  2. Конкатениране на низ и число в SQL

  3. MongoDB $round

  4. Какъв е най-бързият начин за копиране на колекция в една и съща база данни?

  5. Инсталиране на MongoDB на Ubuntu 16.04