mongodb와 nodejs 설정
기본설정
몽고 패키지 가져오기(공통적으로 들어감))
const {MongoClient} = require('mongodb');
몽고 접속 및 서버 닫기
MongoClient.connect('mongodb://localhost:27017/TodoApp', (err, db)=> {
if (err) {
console.log('unable to connect to Mongodb');
}
console.log('connect to mongoDb server');
dbclose();
});
조회
전체검색
Todos 콜렉션에서의 모든 데이터 검색
db.collection('Todos').find().toArray().then((docs)=>{
console.log(JSON.stringify(docs, undefined, 2));
},(err)=>{
console.log('unable to fetch todos', err);
});
조건검색(where)
completed가 false인것을 전체검색
db.collection('Todos').find({completed:false}).toArray().then((docs)=>{
console.log('Todos');
console.log(JSON.stringify(docs, undefined, 2));
},(err)=>{
console.log('unable to fetch todos', err);
});
개수검색(count)
Todos 콜렉션의 전체 개수 반환
db.collection('Todos').find().count().then((docs)=>{
console.log('Todos count:'+ docs);
},(err)=>{
console.log('unable to fetch todos', err);
});
수정
findOne(하나를 찾아) Update함
db.collection('Todos').findOneAndUpdate({
_id:new ObjectID('583da128975a04dc8728198f')
},{
$set:{
completed: true
}
},{
returnOriginal:false
}).then((result)=>{
console.log(result);
});
추가
하나를 추가.
db.collection('Users').insertOne({
name: 'Andre',
age: 25,
location: 'philadelphia'
}, (err,result)=>{
if(err){
return console.log('unable to inert user', err);
}
삭제
하나삭제
db.collection('Todos').deleteOne({text:'111'}).then((result)=>{
console.log(result);
});
하나를 찾아서 삭제.
db.collection('Todos').findOneAndDelete({completed:false}).then((result)=>{
console.log(result);
});
여러개 삭제
db.collection('Todos').deleteMany({complete:false});