1 const mongoose = require('mongoose'); 2 // 1. 連接數據庫 3 mongoose.connect('mongodb://localhost:27017/m_data', {useNewUrlParser: true}); 4 mongoose.connection.on('open', ()=>{ 5 console.log('數據庫連接成功!'); 6 }); 7 // 2. 監聽數據庫的各種狀態 8 let db = mongoose.connection; 9 10 // 3. 監聽 11 // 3.1 連接成功 12 db.on('open', ()=>{ 13 console.log('數據庫連接成功!'); 14 }); 15 16 // 3.2 連接失敗 17 db.on('error', ()=>{ 18 console.log('數據庫連接失敗!'); 19 }); 20 21 // 3.3 斷開連接 22 db.on('close', ()=>{ 23 console.log('數據庫斷開連接!'); 24 });
1 const mongoose = require('mongoose'); 2 mongoose.connect('mongodb://localhost:27017/m_data', {useNewUrlParser: true}); 3 mongoose.connection.on('open', ()=>{ 4 console.log('數據庫連接成功!'); 5 }); 6 7 // 2. 創建模式對象 8 let Schema = mongoose.Schema; 9 let personSchema = new Schema({ 10 name: String, 11 age: Number, 12 chat: String, 13 sex: { 14 type: String, 15 default: '男' 16 } 17 }); 18 19 // 3. 創建Model集合對象 20 let personModel = mongoose.model('person', personSchema); 21 22 // 4. 往集合中插入文檔 23 /* 24 personModel.create({ 25 name: '小撩', 26 age: 25, 27 chat: 'itlike001', 28 sex: '男' 29 }).then((data)=>{ 30 console.log(data); 31 }).catch((err)=>{ 32 console.log(err); 33 }); 34 */ 35 36 /* 37 personModel.create({ 38 name: '謝霆鋒', 39 age: 39, 40 chat: 'xtf1990', 41 sex: '男' 42 }).then((data)=>{ 43 console.log(data); 44 }).catch((err)=>{ 45 console.log(err); 46 }); 47 */ 48 49 personModel.create([ 50 {name: '王菲', age: 49, chat: 'xtf1990', sex: '女'}, 51 {name: '李宇春', age: 29, chat: 'lyc', sex: '女'}, 52 {name: '周傑倫', age: 36, chat: 'zjl'}, 53 {name: '宋小寶', age: 50, chat: 'sxb'}, 54 {name: '趙薇', age: 60, chat: 'zw', sex: '女'}, 55 ]).then((data)=>{ 56 console.log(data); 57 }).catch((err)=>{ 58 console.log(err); 59 });
const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost:27017/m_data', {useNewUrlParser: true}); mongoose.connection.on('open', ()=>{ console.log('數據庫連接成功!'); }); // 2. 創建模式對象 let Schema = mongoose.Schema; let personSchema = new Schema({ name: String, age: Number, chat: String, sex: { type: String, default: '男' } }); // 3. 創建Model集合對象 let personModel = mongoose.model('person', personSchema); // 4. CRUD // 4.1 增加 /*personModel.insertMany([ {name: '王菲', age: 49, chat: 'xtf1990', sex: '女'}, {name: '李宇春', age: 29, chat: 'lyc', sex: '女'}, {name: '周傑倫', age: 36, chat: 'zjl'}, {name: '宋小寶', age: 50, chat: 'sxb'}, {name: '趙薇', age: 60, chat: 'zw', sex: '女'}, ]).then((data)=>{ console.log(data); }).catch((err)=>{ console.log(err); });*/ // 4.2 查 /*personModel.find({}, (err, docs)=>{ if(!err){ console.log(docs[0]); console.log(typeof docs); } });*/ /*personModel.findOne({name: '周傑倫'}, (err, docs)=>{ if(!err){ console.log(docs); } });*/ /*personModel.find({},{name:1, _id:0, chat:1},(err, docs)=>{ 1需要展示 0不需要展示 沒寫的默認不查找 if(!err){ console.log(docs); }else { console.log(err); } });*/ /*personModel.find({}, "-_id name", {skip: 3, limit: 2},(err, docs)=>{ //-_id 不顯示 if(!err){ console.log(docs); }else { console.log(err); } });*/ // 4.3 修改 /*personModel.updateOne({name: '王菲'}, {$set: {age: 50}}, (err)=>{ if(!err){ console.log('修改成功!'); }else { throw err; } });*/ /* personModel.updateMany({name: '周傑倫'}, {$set: {age: 20, chat: '我要學IT'}}, (err)=>{ if(!err){ console.log('修改成功!'); }else { throw err; } }); */ // 4.4 刪除 /*personModel.remove({name: '宋小寶'}, (err)=>{ if(err) throw err; console.log('刪除成功!'); });*/ /*personModel.deleteOne({name: '王菲'}, (err)=>{ if(err) throw err; console.log('刪除成功!'); });*/ /* personModel.deleteMany({}, (err)=>{ if(err) throw err; console.log('刪除成功!'); }); */ personModel.countDocuments({}, (err, count)=>{ console.log(count); //統計文檔的個數 });
get set的方法 與之前的方法相似(但是對查詢出來的數據進行操作)
const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost:27017/m_data', {useNewUrlParser: true}); mongoose.connection.on('open', ()=>{ console.log('數據庫連接成功!'); }); // 2. 創建模式對象 let Schema = mongoose.Schema; let personSchema = new Schema({ name: String, age: Number, chat: String, sex: { type: String, default: '男' } }); // 3. 創建Model集合對象 let personModel = mongoose.model('person', personSchema); personModel.findOne({}, (err, docs)=>{ if(!err){ /* console.log(docs.get('sex')); console.log(docs.set('sex', '男'));*/ console.log(docs.toJSON()); } });