zoukankan      html  css  js  c++  java
  • mongodb Insert 、 remove 、操作原子性(atomicity)

    insert methods

    db.collection.insertOne()
    db.collection.insertMany()
    db.collection.insert()
    

    db.collection.insert()

    inserts a single document or multiple documents into a collection.
    To insert a single document, pass a document to the method; to insert multiple documents, pass an array of documents to the method.

    db.collection.insert(
       <document or array of documents>,
       {
         writeConcern: <document>,
         ordered: <boolean>
       }
    )
    
    db.collection.insertMany(
       [ <document 1> , <document 2>, ... ],
       {
          writeConcern: <document>,
          ordered: <boolean>
       }
    )
    

    about ordered(Defaults to true)

    Optional.
    If true, perform an ordered insert of the documents in the array, and if an error occurs with one of documents, MongoDB will return without processing the remaining documents in the array.

    If false, perform an unordered insert, and if an error occurs with one of documents, continue processing the remaining documents in the array.

    Delete methods

    db.collection.remove()    Delete a single document or all documents that match a specified filter.
    db.collection.deleteOne() 	
    db.collection.deleteMany()
    

    remove()

    db.users.remove( { status : "P" } )
    

    删除集合、数据库

    db.COLLECTION_NAME.drop()
    db.dropDatabase()
    

    Atomicity

    In MongoDB, a write operation is atomic on the level of a single document, even if the operation modifies multiple embedded documents within a single document.

    $isolated

    Using the $isolated operator, a write operation that affects multiple documents can prevent other processes from interleaving once the write operation modifies the first document. This ensures that no client sees the changes until the write operation completes or errors out.

    db.foo.update(
        { status : "A" , $isolated : 1 },
        { $inc : { count : 1 } },
        { multi: true }
    )
    

    Without the $isolated operator, the multi-update operation will allow other operations to interleave(交错) with its update of the matched documents.

  • 相关阅读:
    P3383 【模板】线性筛素数
    【模板】矩阵乘法快速幂
    【模板】线性筛素数
    【模板】快速幂
    【模板】归并排序求逆序对
    【模板】归并排序模板
    luogu 1084 疫情控制
    luogu 3155 [CQOI2009]叶子的染色
    luogu 1453 城市环路
    luogu 2607 [ZJOI2008]骑士
  • 原文地址:https://www.cnblogs.com/jcuan/p/5698768.html
Copyright © 2011-2022 走看看