MongoDB와 Node.js 연결
MongoDB와 Node.js
MongoDB 제어를 Node.js 위에서
개요
- node.js 기반의 DB 제어 방법
- npm install mongodb 사용법
필요 조건
MongoDB 접속 코드
- mongoTest.js
- 123456789
varMongoClient = require('mongodb').MongoClient;functioncallback(r) {console.log("r:"+ r);}MongoClient.connect(url, callback); node mongoTest.js- error 발생하는 경우
- 1
r:Error: failed to connect to [localhost:27017] 
- cmd 창에서
mongod명령 실행 
node mongoTest.jsnpm install mongodb;- Q: 프로그램이 종료되지 않는 이유는?
db.close();- 1234567
varMongoClient = require('mongodb').MongoClient;function(err, db) {console.log('err:'+ err +'\ndb:'+ db);db.close();});
MongoDB 데이터 입력
db.collection("test").insert({a: 1}, function(err, result) {});- 12345678910111213
varMongoClient = require('mongodb').MongoClient;function(err, db) {console.log('err:'+ err +'\ndb:'+ db.collection("test"));db.collection("test").insert({"oka": 1},function(e) {console.log(e);db.close();});// db.close();});
MongoDB 데이터 조회
db.collection("test").find().toArray(function(err, items){});- 12345678910111213
varMongoClient = require('mongodb').MongoClient;function(err, db) {console.log('err:'+ err +'\ndb:'+ db.collection("test"));db.collection("test").find().toArray(function(err, items) {console.log(items.length);for(variinitems) {console.log(i +":"+ JSON.stringify(items[i]));}db.close();});}); db.collection("test").findOne({a: 1}, function(err, item){});- 123456789101112
varMongoClient = require('mongodb').MongoClient;function(err, db) {// Find the saved documentdb.collection("test").findOne({"c": 1},function(err, item) {console.log('world', item);db.close();});});
MongoDB 데이터 수정
db.collection("test").update({a: 1}, {b: 2}, function(err, result) {});- 1234567891011121314
varMongoClient = require('mongodb').MongoClient;function(err, db) {console.log('err:'+ err +'\ndb:'+ db.collection("test"));db.collection("test").update({"oka": 1}, {"okb": 60},function(e, num) {console.log(num);db.close();});});
MongoDB 데이터 삭제
db.collection("test").remove({a: 1}, function(err, result) {});- 12345678910111213141516171819202122232425
varDb = require('mongodb').Db,MongoClient = require('mongodb').MongoClient,Server = require('mongodb').Server,assert = require('assert');vardb =newDb('test',newServer('localhost', 27017), {safe:true});// Establish connection to dbdb.open(function(err, db) {// Fetch a collection to insert document intodb.collection("test",function(err, collection) {// Insert a bunch of documentscollection.insert([{a:1}, {b:2}], {w:1},function(err, result) {assert.equal(null, err);// Remove all the documentcollection.remove({a:1}, {w:1},function(err, numberOfRemovedDocs) {assert.equal(null, err);assert.equal(1, numberOfRemovedDocs);db.close();});});})});
참고
- Node.JS MongoDB Driver Manual
- http://mongodb.github.io/node-mongodb-native/contents.html
