当前位置: 首页 > Web前端 > JavaScript

day28-mongodb

时间:2023-03-27 18:32:23 JavaScript

day28-mongodb一、介绍1、数据库介绍2、数据库分类3、mongodb介绍2、下载安装3、命令行操作1、基本操作在cmd中输入mongo退出mongodb,使用exit查看所有数据库列表----showdbs----该命令不显示空数据库Createdatabaseorswitchdatabase--usedatabasename---存在则切换,不存在则创建查看数据库中的所有表---Thetables在showtables或者showcollections数据库不需要创建,添加数据会自动生成一个表db.tablename.insert(JSON格式数据)---如果数据是对象,就加一个,如果是数据,添加多个删除表---db.tablename.drop()deletelibrary--需要进入要删除的库,然后执行命令--db.dropDatabase()***2。数据操作2.1添加db.tablename.insertMany([{},{},{}])添加一条数据是数据中的一个对象,多条数据是数组中的多个对象2.2删除已有文档数据---db.tablename.deleteOne(condition)2.3将某部分数据更改为指定的新数据在指定条件的数据中:db.tablename.updateOne({condition},{$inc:{key:自增数}})2.4查询所有数据:db.tablename/collectionname.find()Querywithcondition:db.tablename/collectionname.find({condition})某个key等于某个value-----{key:value}某个key大于某个value-----{key:{$gt:value}}某个key大于等于某个值-----{key:{$gte:value}}某个key小于某个值-----{key:{$lt:value}}某个key小于等于某个值-----{key:{$lte:value}}某个key不等于某个值-----{key:{$ne:value}}somekeyisinsomearray-----{key:{$in:[value,value]}}andcondition-----{condition,condition}orThecondition-----{$or:[{condition},{condition}]}使用正则表达式作为条件查询----{key:regularexpression}空条件表示查询全部---{}在查询结果中,希望某些键值对不显示或强制显示--db.tablename.find(condition,{key:0/1})----------0表示这个key不显示,1表示这个key是要强制显示统计查询结果数据的个数-----db。表名。找到(条件)。count()统计所有数据的数据量------db。tablename.count()Sort------db.tablename.find(condition).sort({key:1/-1})--------1表示升序,-1表示降序数据很多,但是需要分页显示,根据当前页查询需要的数据----db.表名.find().skip(number).limit(number)-----------skip中的数据表示在开始查询前跳过多少条数据,limit中的数据表示查询多少条数据4.可视化操作5.代码操作-----猫鼬1。下载并安装--npmimongoose@62.导入模块---constmongoose=require('mongoose')3.连接数据库mongoose.connect('mongodb://localhost:27017/databasename')4.创建Schema---为数据设置格式,对数据进行约束,默认mongodb对数据没有约束constuserSchma=newmongoose.Schema({username:{required:true,//requiredtype:String},password:String,tel:Number,isMan:Boolean,email:String})5.创建模型constuserModel=mongoose.model('user',Schema)参数1:模型名---String参数2:Schema参数3:可选,表名,不写则默认为模型名+s6。数据操作①插入:model.insertMany(data,function)------异步操作②修改:Model.updataOne(condition,待修改数据,function)----异步操作③Query查询多个:model.find(condition,function)查询一:model.findOne(condition,function)④删除:model。deleteOne(条件,函数)