一篇文章入门MongoDB非关系型数据库

本文档介绍了MongoDB的基本操作,包括查询、插入、修改和删除文档。MongoDB是一个文档数据库,其基本元素是类似JSON的文档。通过示例展示了如何使用find(), insert(), update(), remove()等方法进行数据操作,并提到了内嵌文档的查询和修改。" 103284024,9067861,深入理解操作系统:Nachos文件系统扩展,"['高级操作系统', '文件系统']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

六七月份入门了MySQL,之前老师提过,SQL是关系型数据库的语言,还有非关系型数据库,代表是MongoDB。八月中下旬搬完家以后开始学习MongoDB的一些基本操作。

MongoDB是一个文档数据库,旨在简化开发和扩展。之前SQL的基本单位就是表格,表示数据之间的关系。而MongoDB的基本元素就是文档,类似于json中的键值对。
在这里插入图片描述
安装并访问数据库,以及安装可视化界面等步骤不详细介绍了,可以根据这个网课来:
尚硅谷MongoDB基础教程(数据库精讲)_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili https://www.bilibili.com/video/BV18s411E78K?p=2

下面直接说说增删改查。

查询
db..find()
find()用来查询集合中所有符合条件的文档,没条件那就是所有文档。
find()可以接受一个对象做条件对象,返回一个数组
{属性:值}
db..findOne({})找到符合条件的第一个文档对象。
db..find().count()
mongoDB的文档属性值也可以是一个文档。当一个文档的属性值是一个文档时,我们称这个文档叫做内嵌文档。
MongoDB可以查询内嵌文档,以.的形式访问。
如果通过内嵌文档查询,此时属性名必须使用引号" "

相关代码:

db.dummy_collection.find({"_id" : ObjectId(“5f42493c15123f91cb8e2d19”)});
db.dummy_collection.findOne({“age” : “30”,“gender” : “male”});
db.dummy_collection.find().count();

向数据库插入文档
db..insert()
db..insertOne()
db..insertMany()
向集合中插入一个或者多个文档
如果文档中没有_id属性,数据库自动为文档添加。
该属性用于文档唯一标识。
_id可以自己指定,我们自己设置了系统就不管了。

db.dummy_collection.insert([
{name:“沙和尚”,age:“30”,gender:“male”},
{name:“白骨精”,age:“19”,gender:“female”}
]);

db.dummy_collection.find();

修改
db.collection.update(查询条件,修改后的新对象)
update默认情况下会使用新对象替换旧对象。默认只改一个
修改指定属性,需要使用修改操作符完成修改。
$set用来修改文档中指定属性。
$unset删除文档指定属性
db.collection.updateMany()
db.collection.updateOne()
$push 用于向数组中增加一个新的元素
$addToSet 向数组中增加一个新元素且自动查重。

db.dummy_collection.update({name:“沙和尚”},{name:“沙和尚”,age:“40”,gender:“male”});
db.dummy_collection.find();

db.dummy_collection.update(
{"_id" : ObjectId(“5f424ada15123f91cb8e2d1c”)},
{$set:{
address:“流沙河”,age:“50”
}
}
);

db.dummy_collection.update(
{"_id" : ObjectId(“5f424ada15123f91cb8e2d1c”)},
{$unset:{
address:1
}
}
);

db.dummy_collection.updateMany(
{“name” : “bajie”},
{$set:{
address:“云栈洞”
}
}
);

删除
db.dummy_collection.remove()
db.dummy_collection.deleteOne()
db.dummy_collection.deleteMany()
remove()要传递条件,和find一样。删除符合条件的所有文档,有几个删除几个
remove第二参数选择true。就只删除一个.只传递一个空参数,就清空集合了,但是性能比较差,一个一个删除。
db.dummy_collection.drop() 删除集合。集合都没了。性能比较好。
db.dropDatabase() 删除数据库,真的啥都没了

db.dummy_collection.find();

db.dummy_collection.remove({“name” : “bajie”},true);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值