day28-mongodb
一、介绍
1.数据库介绍2.数据库分类3.mongodb介绍
二、下载安装
三、命令行操作
1.基本操作 在cmd输出mongo 退出mongodb应用exit 查看所有数据库列表----show dbs----此命令不显示空库 创立数据库或切换数据库--use 数据库名---存在则切换,不存在则创立 查看库中所有表---show tables 或 show collections 数据库中的表不须要创立,增加数据会主动生成表 db.表名.insert(JSON格局数据)---数据是对象则增加一条,是数据则增加多条 删除表---db.表名.drop() 删除库---需进入要删除的库,后执行命令--db.dropDatabase()***2.数据操作 2.1 增 db.表名.insertMany([{},{},{}]) 增加一条数据就是数据中的一个对象,多条数据就是数组中的多个对象 2.2 删 删除已存在的文档数据---db.表名.deleteOne(条件) 2.3 改 依据指定条件,将数据中的某一部分批改为指定的新数据 db.表名.updateOne({条件}, {$set: {新的数据}}) 让指定条件的数据中的某个数字自增或自减: db.表名.updateOne({条件}, {$inc: {键: 自增多少的数字}}) 2.4 查 查问所有数据:db.表名/汇合名.find() 带条件查问:db.表名/汇合名.find({条件}) 某个键 等于 某个值-----{键: 值} 某个键 大于 某个值-----{键: {$gt: 值}} 某个键 大于等于 某个值-----{键: {$gte: 值}} 某个键 小于 某个值-----{键: {$lt: 值}} 某个键 小于等于 某个值-----{键: {$lte: 值}} 某个键 不等于 某个值-----{键: {$ne: 值}} 某个键 在 某个数组中-----{键: {$in: [值, 值]}} 并且的条件-----{条件, 条件} 或者的条件-----{$or: [{条件}, {条件}]} 以正则表达式作为条件查问----{键: 正则表达式} 空条件示意查问所有---{} 在查问后果中,心愿某些键值对不显示或强制显示--db.表名.find(条件, {键: 0/1})----------- 0示意这个键不显示,1示意这个键要强制显示 统计查问后果的数据的数量-----db.表名.find(条件).count() 统计所有数据的数据量------db.表名.count() 排序------db.表名.find(条件).sort({键: 1/-1})--------- 1示意升序,-1示意降序 数据很多,然而要分页显示,依据以后是第几页来查问须要的数据----db.表名.find().skip(数字).limit(数字)---------- skip中的数据,示意跳过后面多少条数据,开始查问, limit中的数据,示意要查问多少 条数据
四、可视化操作
五、代码操作-----mongoose
1.下载安装--npm i mongoose@62.导入模块---const mongoose = require('mongoose')3.连贯数据库 mongoose.connect('mongodb://localhost:27017/数据库名')4.创立Schema---给数据设置格局,束缚数据,默认mongodb对数据没有束缚 const userSchma = new mongoose.Schema({ username: { required: true, // 必填 type: String }, password: String, tel: Number, isMan: Boolean, email: String
})
5.创立model const userModel = mongoose.model('user',Schema) 参数1:模型名称---字符串 参数2:Schema 参数3:可选项,表名,不写默认为模型名称+s6.数据操作 ①插入:模型.insertMany(数据,函数)------异步操作 ②批改:模型.updataOne(条件,要批改的数据,函数)----异步操作 ③查问 查问多个:模型.find(条件,函数) 查问一个:模型.findOne(条件,函数) ④删除:模型.deleteOne(条件,函数)