MongoDB 支持 JSON 和 BSON 两种数据格式。JSON 是一种轻量级的数据交换格式,易于人阅读和编写。而 BSON (Binary JSON) 是 MongoDB 的二进制格式的 JSON,它比 JSON 更加紧凑,包括了 BSON 特有的类型来优化存储和查询效率。
在 MongoDB 中,你可以使用 JSON 或 BSON 来插入和查询数据。例如,你可以使用 insertOne
方法来插入一个 JSON 文档或 BSON 文档。
以下是使用 MongoDB 的 Node.js 驱动程序插入 JSON 和 BSON 文档的例子:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017';
const dbName = 'mydatabase';
// 连接到 MongoDB
MongoClient.connect(url, function(err, client) {
if (err) throw err;
const db = client.db(dbName);
const collection = db.collection('documents');
// 插入 JSON 文档
const jsonDoc = {"name": "John", "age": 30};
collection.insertOne(jsonDoc, function(err, result) {
if (err) throw err;
console.log("JSON document inserted");
});
// 插入 BSON 文档
const bsonDoc = {name: "Jane", age: 25}; // 注意,BSON 可以使用非字符串键
collection.insertOne(bsonDoc, function(err, result) {
if (err) throw err;
console.log("BSON document inserted");
client.close();
});
});
在上面的例子中,我们首先连接到 MongoDB,然后插入两个文档,一个是 JSON 文档,另一个是 BSON 文档。注意,在 BSON 中,你可以使用非字符串作为键名,这在 JSON 中是不允许的。
MongoDB 会自动处理插入的 JSON 或 BSON 文档,将其转换为内部的 BSON 格式。当你从集合中查询数据时,MongoDB 会自动将 BSON 格式的数据转换回 JSON 格式(如果需要)。