MongoDB v3.2
1. 方法定义
db.collection.insert( <document or array of documents>, { writeConcern: <document>, ordered: <boolean> } )
第一个参数可以是一个文档,也可以是一个文档数组,即insert可以同时插入多条数据
第二个参数是一个文档,writeConcern表示进行写入操作时数据库的响应级别,ordered是一个布尔值,若为true,按顺序插入指定数组中的document,如果其中一个document插入时出现错误,直接返回,剩下的document不再处理;若为false,会忽略错误继续插入剩下的文档。默认为true。
另外,在向集合插入文档时,若文档不存在,则自动创建。若插入的文档中未指定_id字段,则自动生成。
2. 返回值
插入单个文档,返回WriteResult对象;插入多个文档,返回BulkWriteResult对象。
插入成功时返回:
WriteResult({ "nInserted" : 1 })
nInserted表示插入的数量
若插入时出现一个write concern错误,返回类似如下信息:
WriteResult({ "nInserted" : 1, "writeConcernError" : { "code" : 64, "errmsg" : "waiting for replication timed out at shard-a" } })
插入时出现于write concern无关的错误:
WriteResult({ "nInserted" : 0, "writeError" : { "code" : 11000, "errmsg" : "insertDocument :: caused by :: 11000 E11000 duplicate key error index: test.foo.$_id_ dup key: { : 1.0 }" } })
3. Write Concern
用于设定写操作的响应等级
{ w: <value>, j: <boolean>, wtimeout: <number> }
w=0: 写操作不等待服务端响应确认,即便写入失败也不会响应。但能感知到网络错误。
w=1: 能够获取到单节点或集群中主节点的响应信息。该值为默认值。
w=majority: 能够获取到集群中包括主节点在内的多个节点(voting)的响应信息,而且本次写入操作会确保记录磁盘journal,即便断电数据也不会丢失
w>1: 能够获得包括主节点在内的多个节点的响应信息,但指定的数量需与集群数量一致,否则操作会一直等待,除非设置wtimeout
j=true: 等待操作写入journal log才会返回响应,可以容忍服务器宕机。需在mongod启动时加上journaling参数确保可以使用。
wtimeout: 写入操作的超时时长,单位为毫秒,超时则返回一个错误信息。
相关推荐
插入文档是通过调用集合对象的 `insert()` 方法完成的。这个方法接受一个数组,该数组将转换为 MongoDB 的文档格式。例如: ```php $document = array( "title" => "MongoDB", "description" => "database", ...
插入文档主要使用`DBCollection`对象的`insert()`方法。在这个例子中,`BasicDBObject`被用来创建一个文档对象,它是一个键值对的容器,类似于JSON对象。文档的结构如下: ```java BasicDBObject doc = new ...
MongoDB 使用 insert() 或 save() 方法向集合中插入文档,语法如下: db.COLLECTION_NAME.insert(document) 实例 以下文档可以存储在 MongoDB 的 runoob 数据库 的 col 集合中: >db.col.insert({title: 'Mo
创建集合非常简单,只需向其插入文档即可,如果集合不存在,MongoDB会自动创建。例如: ```javascript > db.my_collection.insert({name: "John", age: 30}) ``` 这里`my_collection`是集合名,`{name: "John", ...
当向集合插入第一个文档时,集合会自动创建。 文档是MongoDB中的基本数据单元,类似于JSON对象,由键值对组成,键值对可以包含多种数据类型,甚至嵌套其他文档或数组。每个文档都必须有一个唯一的`_id`键,通常是...
在MongoDB数据库中,插入操作是向集合中添加新文档的基本方法。MongoDB提供了两种主要的插入方法,即`insert()`和`save()`,用于将数据存储到集合中。 首先,`insert()`方法是最常见的插入操作,其基本语法如下: ...
5. **插入文字**:利用`pWordApp->ActiveDocument->Content`获取当前文档的文本范围,然后调用`InsertText`或`TypeText`方法插入文字。例如,`pWordApp->ActiveDocument->Content->Text = _T("这是插入的文字");` 6...
首先,我们需要使用GetShapes()方法获取当前文档中的shapes集合,并将其保存在Shapes对象中。 Shapes MyShapes; MyShapes.AttachDispath(Mydoc.GetShapes(),1); 然后,我们可以使用AddPicture()方法将选定的图片...
本文给大家介绍MongoDB的插入文档的方法,一起看看吧 1、文档的数据存储格式为BSON,类似于JSON。MongoDB插入数据时会检验数据中是否有“_id”,如果没有会自动生成。 shell操作有insert和save两种方法。当插入一条...
2. **集合(Collections)**:在MongoDB中,数据以文档的形式存储在集合里,类似于关系数据库中的表格。集合是动态模式的,不需要预先定义模式,这意味着你可以随时添加新的字段。 3. **CRUD操作**:创建(Create)...
在MongoDB中,插入文档是创建新数据的主要方式。插入文档的语法格式如下: ```javascript db.collectionName.insert_one({BSON}) ``` 或 ```javascript db.collectionName.insertMany([{BSON1}, {BSON2}, ...]) ```...
在某些数据库系统中,如MongoDB这样的NoSQL数据库,创建集合(相当于关系数据库中的表)和插入文档(相当于记录)的操作有所不同。例如,在MongoDB中,创建集合是自动完成的,当你第一次插入文档时,如果该集合不...
接收单元格范围名称和图片路径作为参数,通过`get_Range`方法定位到目标单元格,然后使用`Pictures`集合的`Insert`方法插入图片。 - **SaveFile 方法**: 用于保存当前工作簿到指定路径。虽然在示例代码中未明确...
MongoDB 使用 `insert` 方法向集合中添加文档,如 `db.表名.insert({"name":"zhangsan","age":20})`。当插入数据时,如果没有预先存在的集合,MongoDB 会自动创建该集合。 在查询数据方面,MongoDB 提供了丰富的...
以下是如何使用`save()`方法向`inventory`集合中插入文档: ```javascript db.inventory.save( { type: "book", item: "notebook", qty: 40 } ) ``` 这里,MongoDB会自动为新插入的文档生成一个`_id`字段并赋予...
1. **`IMongoCollection.BulkWrite`方法**:此方法接受一系列的`WriteModel`对象作为参数,可以是插入、更新或删除操作。这些操作会被作为一个原子性的事务提交到MongoDB。 2. **`IsUpsert`属性**:当设置为`true`...
例如,插入文字可以通过`Document.Content.InsertText`方法实现,而插入图片则可以使用`Document.InlineShapes.AddPicture`方法。 2. **Word书签使用**: 书签是Word文档中的一个定位点,用于标记特定位置以便后续...
插入单个文档到MongoDB集合中,可以使用`insertOne()`方法。例如,假设我们有一个名为`students`的集合,我们可以插入一个学生记录: ```javascript db.students.insertOne({ name: "张三", age: 20, major: ...
3. `insertData(offset, string)`: 将指定字符串插入到文本节点指定的位置中。 4. `replaceData(offset, count, string)`: 用给定的字符串替换文本节点指定位置数量的文本数据。 5. `splitText(offset)`: 将指定位置...