一,局部安裝mongoosemongodb
npm install mongoose -S數據庫
2、mongoose經常使用命令:npm
//引入mongoose模塊: const mongoose = require('mongoose'); //鏈接數據庫: mongoose.connect('mongodb://127.0.0.1:27017/kinoko',(err)=>{ if(err){ console.log('鏈接失敗') }else{ console.log('鏈接成功') } //建立表以及字段類型: //建立表user const User = mongoose.model('user',{ //規定user表中的字段類型: name:String, age:Number }) //增: const user = new User({ name : '阿古', age:19 }) const user1 = new User({ name : '美麗', age:22 }) const user2 = new User({ name : '笑笑', age:21 }) const user3 = new User({ name : '劉梅', age:56 }) console.log(user.save()) //輸出:Promise{<pending>} user.save().then((result)=>{ console.log('成功的回調') },()=>{ console.log('失敗的回調') }) user1.save().then((result)=>{ console.log('成功的回調') },()=>{ console.log('失敗的回調') }) user2.save().then((result)=>{ console.log('成功的回調') },()=>{ console.log('失敗的回調') }) user3.save().then((result)=>{ console.log('成功的回調') },()=>{ console.log('失敗的回調') }) //刪: //刪除指定對象: User.remove({name:'美麗'}).then((result)=>{ //result:是一個對象 返回值是受影響條數 console.log(result) }) //刪除全部數據: User.remove({}).then((result)=>{ console.log(result) }) //刪除指定ID User.findByIdAndRemove("5c8263170998c51d58e14044").then((result)=>{ //5c8263170998c51d58e14044 ID值 console.log(result); }) //改: User.update({name:'阿古'},{$set:{name:"lily"}},{multi:true}).then((result)=>{ console.log(result); //multi:true 表示修改多條數據 }) User.findByIdAndUpdate("5c8263170998c51d58e14046",{$set:{name:'rose'}},{multi:true}).then((result)=>{ console.log(result); }) //查找符合條件的全部數據: User.find({name:'lily'}).then((result)=>{ console.log(result); }) // //查詢全部數據: User.find().then((result)=>{ console.log(result); }) //查詢單條數據: User.findOne({name:'lily'}).then((result)=>{ console.log(result); }) //條件查詢:$lt(小於) $lte(小於等於) $gt(大於) $gte(大於等於) $ne(不等於) User.find({'age':{'$lt':20}}).then((result)=>{ console.log(result); }) User.find({'age':{'$lte':20}}).then((result)=>{ console.log(result); }) User.find({'age':{'$gt':20}}).then((result)=>{ console.log(result); }) User.find({'age':{'$gte':20}}).then((result)=>{ console.log(result); }) User.find({'age':{'$ne':20}}).then((result)=>{ console.log(result); }) //$in(包含等於) $nin(不包含 不等於) User.find({'age':{'$in':[18,19]}}).then((result)=>{ console.log(result) }) User.find({'age':{'$nin':[18,19]}}).then((result)=>{ console.log(result) }) $exists(判斷當前關鍵字是否存在) User.find({sex:{'$exists':true}}).then((result)=>{ console.log(result); }) //查詢指定列 若是不想要ID值 只須要設置ID = 0; User.find({},{name:1,_id:0}).then((result)=>{ console.log(result); }) //'$or'或 User.find({'$or':[{name:'lily'},{age:19}]}).then((result)=>{ console.log(result); }) //$exists(判斷當前關鍵字是否存在) User.find({name:{'$exists':'true'}}).then((result)=>{ console.log(result) }) //升序降序 User.find().sort({age:1}).then((result)=>{ console.log(result) }) User.find().sort({age:-1}).then((result)=>{ console.log(result) }) //模糊查詢: User.find({name:/l/}).then((result)=>{ console.log(result) }) User.find({name:/^l/}).then((result)=>{ //以l開頭 console.log(result) }) User.find({name:/l$/}).then((result)=>{ //以l結尾 console.log(result) }) //skip()查詢n條之後的數據 User.find().skip(1).then((result)=>{ console.log(result) }) //顯示n到m之間的數據 skip跳過多少條,limit顯示m-n條 User.find().skip(1).limit(3).then((result)=>{ console.log(result); }) })