Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 插入+;更新/升级?_Mongodb_Upsert_Database - Fatal编程技术网

Mongodb 插入+;更新/升级?

Mongodb 插入+;更新/升级?,mongodb,upsert,database,Mongodb,Upsert,Database,快速提问:在mongo(或任何数据库)中,upsert查询是否是insert+update查询的更好选择 upsert->在找到文档时查找并更新文档,否则将插入新文档。我读过一些文章说,这让生活变得更轻松,而且性能更有效。(基本上是两个操作) insert->检查文档是否存在,如果不存在->插入文档,否则抛出错误。(2项业务) update将与insert相反。(2次操作) 从这个upsert似乎是一个更好的选择,但是如果我有很少更新的数据呢。使用插入&更新查询或upsert操作是否更有意义?如

快速提问:在mongo(或任何数据库)中,upsert查询是否是insert+update查询的更好选择

upsert
->在找到文档时查找并更新文档,否则将插入新文档。我读过一些文章说,这让生活变得更轻松,而且性能更有效。(基本上是两个操作)
insert
->检查文档是否存在,如果不存在->插入文档,否则抛出错误。(2项业务)
update
将与insert相反。(2次操作)


从这个
upsert
似乎是一个更好的选择,但是如果我有很少更新的数据呢。使用
插入
&
更新
查询或
upsert
操作是否更有意义?

如果您主要插入新数据,但偶尔在这些数据中可能会有您知道要更新的文档,则upsert将使您无需编写额外的错误处理或检查例程。在这种情况下,它会“更好”。不过,这确实取决于您的数据以及您希望如何处理异常。确保您可以在没有警告的情况下更新文档,并且没有希望插入因现有数据而失败的情况。

以相同的理念结束^_^