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());
}
});
