1. 数据库管理
1.1 切换数据库
切换到名为 myDatabase 的数据库。如果该数据库不存在,MongoDB 会在第一次写入数据时自动创建它。
use myDatabase;
1.2 查看当前数据库
显示当前使用的数据库的名称。
db;
1.3 显示所有数据库
列出当前 MongoDB 实例中的所有数据库。
show dbs;
2. 集合管理
2.1 创建集合
在当前数据库中创建一个名为 book 的集合。集合是 MongoDB 中存储文档的地方。
db.createCollection("book");
2.2 创建有验证规则的集合
创建一个名为 books 的集合,设置为 capped(固定大小)并定义验证规则。该集合最多可容纳 1000 个文档,大小限制为 1024 字节。
db.createCollection("books", {
capped: true,
size: 1024,
max: 1000,
validator: {
$jsonSchema: {
bsonType: "object",
required: ["book_name", "book_money"],
properties: {
book_name: {
bsonType: "string",
description: "书名必须为字符串且为必填项"
},
book_money: {
bsonType: "string",
description: "价格必须为字符串且为必填项"
}
}
}
},
validationLevel: "strict",
validationAction: "error"
});
3. 文档操作
3.1 插入单个文档
向 book 集合中插入一个文档,包含书名、价格和语言字段。
db.book.insertOne({
name: "《疯狂Java讲义》第六版",
money: 100,
language: "Java"
});
3.2 插入多个文档
使用 insertMany 方法一次性插入多个文档到 books 集合中。
db.books.insertMany([
{
book_name: "《疯狂Python讲义》",
book_money: "123"
},
{
book_name: "《刘海柱》",
book_money: "30"
}
]);
4. 更新文档
4.1 更新单个文档
更新 _id 为特定值的文档,将 book_name 和 book_money 字段设置为新的值。
db.books.updateOne(
{
_id: ObjectId("66c3069ea50d000087000a10")
},
{
$set: {
book_name: "《维生素》",
book_money: "30"
}
},
{
upsert: false
}
);
4.2 更新多个文档
更新所有 book_name 为 "《买瓜子》" 的文档,将其字段更新为新的值。
db.books2.updateMany({
book_name: "《买瓜子》"
}, {
$set: {
book_name: "修改了 ",
book_money: "55"
}
});
5. 查询文档
5.1 查找单个文档
查找 book_name 为 "《奥里给》" 的第一个文档并返回。
db.books2.findOne(
{
book_name: "《奥里给》"
}
);
5.2 查找多个文档
查找 book_money 小于 "40" 的所有文档。
db.books2.find({
book_money: {
$lt: "40"
}
});
6. 删除文档
6.1 删除多个文档
删除所有 book_name 为 "诶" 的文档。
db.books2.deleteMany(
{
book_name: "诶"
}
);
6.2 删除单个文档
删除 book_name 为 "《维生素666t》" 的单个文档。
db.books2.deleteOne(
{
book_name: "《维生素666t》"
}
);
6.3 查找并删除文档
查找并删除 book_name 为 "爱的番茄" 的文档。
db.books2.findOneAndDelete(
{
book_name: "爱的番茄"
}
);
7. 排序与限制
7.1 排序结果
db.books2.find().sort({
book_sort: -1
});
7.2 跳过和限制结果
跳过前 2 个结果,并限制返回 3 个文档。
db.books2.find().skip(2).limit(3);
8. 使用逻辑操作符
8.1 使用 $and
查找 book_name 不等于 "《奥里给》" 且 book_money 不等于 "30" 的文档。
db.books2.find({
$and: [
{
book_name: {
$ne: "《奥里给》"
}
},
{
book_money: {
$ne: "30"
}
}
]
});
8.2 使用 $or
查找 book_name 为 "奥迪卡" 或 "哈哈哈" 的文档。
db.books2.find(
{
$or: [
{
book_name: "奥迪卡"
},
{
book_name: "哈哈哈"
}
]
}
).pretty();
总结
通过以上操作,我们可以看到 MongoDB 提供了丰富的功能来管理和操作数据。无论是插入、更新、查询还是删除,MongoDB 都为开发者提供了灵活和高效的方式来处理数据。希望这篇入门指南能帮助你更好地理解和使用 MongoDB。
本站资源均来自互联网,仅供研究学习,禁止违法使用和商用,产生法律纠纷本站概不负责!如果侵犯了您的权益请与我们联系!
转载请注明出处: 免费源码网-免费的源码资源网站 » MongoDB快速入门CRUD
发表评论 取消回复