【MongoDB】基础指令
cmd 后进入控制台输入 mongo 启动 mongodb 服务
1、基本指令
显示所有数据库
show dbs 或者 show databases
进入指定数据库
use 数据库名
显示当前的数据库
db
显示数据库中所有集合
show collections
2、数据库 CRUD 的操作
向数据库插入文档
//向 test 数据库的 stus 集合上插入文档对象
db.stus.insert({name:'aa',age:12})
db.stus.insertOne({name:'aa',age:12})
db.stus.insertMany([
{name:'aa',age:12},
{name:'bb',age:12}
])
查询当前集合中的所有文档
//查找 test 数据库的 stus 集合上所有文档对象
db.stus.find()
//查找 test 数据库的 stus 集合上满足条件的文档对象
db.stus.find({_id:'12'})
//查找 test 数据库的 stus 集合上满足条件的第一个文档对象
db.stus.findOne({_id:'12'})
//返回 test 数据库的 stus 集合上文档对象数量
db.stus.findOne({}).count()
修改当前集合中的文档
//修改 _id 为12的 name 为 cc,默认修改一个
db.stus.updata({_id:'12'},{$set:{name:'cc'}})
//删除 _id 为12的 name 属性,默认修改一个
db.stus.updata({_id:'12'},{$unset:{name:'cc'}})
//修改 _id 为12第一个对象的 name 为 cc
db.stus.updataOne({_id:'12'},{$set:{name:'cc'}})
//修改 _id 为12的全部对象的 name 为 cc
db.stus.updataMany({_id:'12'},{$set:{name:'cc'}})
删除当前集合中的文档
//删除 _id 为12的文档,默认删多个
db.stus.remove({_id:'12'})
//删除 _id 为12的一个文档
db.stus.remove({_id:'12'},true)
db.stus.deleteOne({_id:'12'})
//删除 _id 为12的全部文档
db.stus.deleteMany({_id:'12'})
//清空集合(第一个性能较差)
db.stus.remove({})
db.stus.drop()
3、mongoose 的使用
npm 下载 mongoose
npm i mongoose --save
引入 mongoose
var mongoose = require('mongoose')
连接数据库
mongoose.connect('mongodb://localhost:27017/test')
mongoose.connection.once('open',()=>{
console.log("ok")
})
创建 Schema 对象(对数据库进行约束)
Schema 是对数据库进行的约束,限制传入的数据类型
var Schema = mongoose.Schema
//创建一个 Schema 模式对象
var stusSchema = new Schema({
name:String,
age:Number,
address:String
})
创建 model 对象(通过 model 操作数据库)
Model 是代表数据库的集合,通过 Model 来操作数据库
//传入两个参数,第一个是要连接的集合名,第二个是约束
var StuModel = mongoose.model('stus',stusSchema)
向数据库中添加数据
//添加一个文档到集合中,传入两个参数,第一个是对象信息,第二个是回调函数
StusModel.create({
name:'ababab',
age:11111
},(err)=>{
if(!err){
console.log("插入成功")
}
})
向数据库中查找数据
//查找全部数据,传入三个参数,第一个是查找条件,第二个是显示的映射,第三个回调函数
StusModel.find({},'name age',(err,docs)=>{
if(!err){
console.log(docs)
}
})
断开数据库
mongoose.disconnect()
mongoose.connection.once('close',()=>{
console.log("ok")
})
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了