sql >> Databáze >  >> NoSQL >> MongoDB

Zkontrolujte, zda MongoDB upsert provedl vložení nebo aktualizaci

Ano, při bezpečném volání (nebo getLastError) funkce aktualizace vrátí pole s polem upsert a polem updatedExisting.

PHP verzi si můžete přečíst zde:http://php.net/manual/en/mongocollection.insert.php směrem dolů.

Jak je uvedeno v dokumentaci na upserted :

Pokud došlo k upsert, toto pole bude obsahovat pole _id nového záznamu. U upserts bude přítomno buď toto pole, nebo updatedExisting (pokud nenastala chyba).

Takže upserted obsahuje _id nového záznamu, pokud bylo provedeno vložení, nebo se zvýší updatedExisting pokud aktualizoval záznam.

Jsem si jistý, že podobná věc se objevuje ve všech ovladačích.

Upravit

Ve skutečnosti to bude logická hodnota v updatedExisting pole true nebo false



  1. Redis Expire nefunguje

  2. Jak zastavit server mongodb ve Windows?

  3. Geograficky distribuované clustery MongoDB na AWS v regionu EU

  4. Co znamená příliš mnoho pozičních možností při provádění mongoexportu?