sql >> Database >  >> NoSQL >> MongoDB

Een zoekopdracht opslaan in Mongo

Ik denk dat de foutmelding de belangrijke informatie bevat waarmee u rekening moet houden:

Aangezien u een zoekopdracht (of een deel ervan) in een document probeert op te slaan, krijgt u attribuutnamen die mongo-operatorzoekwoorden bevatten (zoals $or , $ne , $gt ). De mongo-documentatie verwijst eigenlijk naar dit exacte scenario - nadruk toegevoegd

In deze gevallen zou ik applicaties van derden zoals Robomongo niet vertrouwen. Ik raad aan om dit probleem rechtstreeks in de mongo-shell te debuggen/testen.

Mijn suggestie zou zijn om een ​​escape-versie van de query in uw document op te slaan om gereserveerde operator-trefwoorden niet te verstoren. U kunt de beschikbare JSON.stringify(my_obj); . gebruiken om uw gedeeltelijke query in een tekenreeks te coderen en deze vervolgens te ontleden/decoderen wanneer u ervoor kiest om deze later op te halen:JSON.parse(escaped_query_string_from_db)



  1. Hoe Redis te controleren als een wachtrij-engine met behulp van cli vergelijkbaar met Beanstalkd?

  2. vraag terug op basis van datum

  3. MongoDB Aggregate $unwind $match met behulp van datum - wat heb ik gemist?

  4. Documenten beheren in MongoDB