前言
MongoDB 是一个开源的 NoSQL 数据库,对于前端来说,对其的了解和使用已经成为必备技能之一。而在 MongoDB 中,集合(Collection)是存储数据的容器,因此对集合的命名规则和使用方法的了解都是非常必要的。
集合命名规则
MongoDB 中集合的命名规则与关系型数据库的表命名规则不同,它不受固定的命名规则约束。但是,为了能够更好地管理集合,我们需要遵循一定的规则。
- 集合名称应该只包含字母、数字或下划线。
- 集合名称应该以字母或下划线开头。
- 集合名称不能与系统保留的关键字重复,如
$out
,$merge
,$planCacheStats
等。 - 集合名称最长不能超过 64 个字符。
需要注意的是,MongoDB 中的集合名称不区分大小写。
集合的使用
创建集合
在 MongoDB 中,集合是在插入数据时创建的。如果插入的数据所对应的集合不存在,MongoDB 会自动创建该集合并插入数据。例如,在 Node.js 中使用以下代码插入数据:
const MongoClient = require('mongodb').MongoClient; const uri = "mongodb://localhost:27017/myDB"; const client = new MongoClient(uri, { useNewUrlParser: true }); client.connect(err => { const collection = client.db("myDB").collection("myCollection"); collection.insertOne({ name: "John", age: 30 }); client.close(); });
执行以上代码后,将自动在名为 myDB
的数据库中创建一个名为 myCollection
的集合,并将数据 { name: "John", age: 30 }
插入到这个集合中。
也可以使用 MongoDB 提供的 createCollection()
方法来手动创建集合。例如:
const MongoClient = require('mongodb').MongoClient; const uri = "mongodb://localhost:27017/myDB"; const client = new MongoClient(uri, { useNewUrlParser: true }); client.connect(err => { const db = client.db("myDB"); db.createCollection("myCollection", function(err, res) { if (err) throw err; console.log("myCollection created!"); client.close(); }); });
执行以上代码后,将在名为 myDB
的数据库中手动创建一个名为 myCollection
的集合。
插入数据
可以使用 insertOne()
方法插入一条数据,例如:
collection.insertOne({ name: "John", age: 30 });
也可以使用 insertMany()
方法插入多条数据,例如:
collection.insertMany([ { name: "John", age: 30 }, { name: "Mary", age: 28 }, { name: "David", age: 35 } ]);
查询数据
可以使用 find()
方法查询数据。例如:
collection.find({ age: { $gt: 30 } });
以上代码将查询年龄大于 30 岁的数据。
还可以使用 findOne()
方法查询一条数据。例如:
collection.findOne({ name: "John" });
以上代码将查询名字为 John 的数据。
更新数据
可以使用 updateOne()
方法更新一条数据,例如:
collection.updateOne({ name: "John" }, { $set: { age: 40 } });
以上代码将年龄为 30 岁的名字为 John 的数据年龄改为 40 岁。
还可以使用 updateMany()
方法更新多条数据,例如:
collection.updateMany({ age: { $gt: 30 } }, { $set: { age: 40 } });
以上代码将年龄大于 30 岁的所有数据年龄改为 40 岁。
删除数据
可以使用 deleteOne()
方法删除一条数据,例如:
collection.deleteOne({ name: "John" });
以上代码将删除名字为 John 的一条数据。
还可以使用 deleteMany()
方法删除多条数据,例如:
collection.deleteMany({ age: { $gt: 30 } });
以上代码将删除年龄大于 30 岁的所有数据。
总结
对于 MongoDB 的集合,其命名规则并不严格限制,但我们应该根据命名规则进行集合名称的命名,以方便我们对集合进行管理。在使用集合时,我们掌握的方法有创建集合、插入数据、查询数据、更新数据和删除数据等。以上是 MongoDB 集合命名规则及使用说明的详细内容,希望读者能够掌握 MongoDB 集合的命名规则和使用方法,从而提高自己的 MongoDB 技能水平。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65a3b0ebadd4f0e0ffbd520a