当前位置:实例文章 » 其他实例» [文章]MongoDB文档存储与插入操作详解

MongoDB文档存储与插入操作详解

发布人:shili8 发布时间:2025-01-10 12:14 阅读次数:0

**MongoDB 文档存储与插入操作详解**

MongoDB 是一个流行的 NoSQL 数据库,支持文档式数据模型。它允许用户以 JSON 格式存储和检索数据。在本文中,我们将详细介绍 MongoDB 文档存储与插入操作。

### 文档存储在 MongoDB 中,每个文档都是一个 JSON 对象,它可以包含任意数量的键值对。每个键都有一个唯一的名称(称为键名),并且每个值都有一个类型(如整数、字符串或日期)。

**示例:**

json{
 "_id" : ObjectId("..."),
 "name" : "John Doe",
 "age" :30,
 "address" : {
 "street" : "123 Main St",
 "city" : "Anytown",
 "state" : "CA",
 "zip" : "12345"
 }
}


在上面的示例中,我们有一个文档,它包含以下键值对:

* `_id`:这是 MongoDB 自动生成的唯一标识符。
* `name`:这是一个字符串值,表示文档的名称。
* `age`:这是一个整数值,表示文档的年龄。
* `address`:这是一个嵌套文档,它包含以下键值对:
+ `street`
+ `city`
+ `state`
+ `zip`

### 插入操作在 MongoDB 中,可以使用 `insertOne()` 或 `insertMany()` 方法插入一个或多个文档。

**示例:**

javascript// 插入一个文档db.collection.insertOne({
 name: "John Doe",
 age:30,
 address: {
 street: "123 Main St",
 city: "Anytown",
 state: "CA",
 zip: "12345"
 }
});

// 插入多个文档db.collection.insertMany([
 {
 name: "Jane Doe",
 age:25,
 address: {
 street: "456 Elm St",
 city: "Othertown",
 state: "NY",
 zip: "67890"
 }
 },
 {
 name: "Bob Smith",
 age:40,
 address: {
 street: "789 Oak St",
 city: "Thistown",
 state: "IL",
 zip: "34567"
 }
 }
]);


在上面的示例中,我们使用 `insertOne()` 方法插入一个文档,然后使用 `insertMany()` 方法插入两个文档。

### 插入操作的选项`insertOne()` 和 `insertMany()` 方法都支持以下选项:

* `w`: 指定写入确认级别(0-1)。
* `j`: 指定 JSON 输出格式。
* `bypassDocumentValidation`: 是否跳过文档验证。

**示例:**

javascript// 使用 w=1 确认写入db.collection.insertOne({
 name: "John Doe",
 age:30,
 address: {
 street: "123 Main St",
 city: "Anytown",
 state: "CA",
 zip: "12345"
 }
}, {w:1});

// 使用 j=0 禁止 JSON 输出db.collection.insertMany([
 {
 name: "Jane Doe",
 age:25,
 address: {
 street: "456 Elm St",
 city: "Othertown",
 state: "NY",
 zip: "67890"
 }
 },
 {
 name: "Bob Smith",
 age:40,
 address: {
 street: "789 Oak St",
 city: "Thistown",
 state: "IL",
 zip: "34567"
 }
 }
], {j:0});

// 使用 bypassDocumentValidation=true 跳过文档验证db.collection.insertOne({
 name: "John Doe",
 age:30,
 address: {
 street: "123 Main St",
 city: "Anytown",
 state: "CA",
 zip: "12345"
 }
}, {bypassDocumentValidation: true});


在上面的示例中,我们使用 `w=1` 确认写入,然后禁用 JSON 输出。最后,我们跳过文档验证。

### 总结MongoDB 文档存储与插入操作是 MongoDB 的基本功能。在本文中,我们详细介绍了文档存储和插入操作的概念,以及相关的选项和示例代码。

相关标签:数据库mongodb
其他信息

其他资源

Top