• 회원가입
  • 로그인
  • 구글아이디로 로그인

[mongodb] Node.js - MongoDB Delete (데이터 삭제)

3,073  

목차

  1. document 삭제 - 1개 경우
  2. document 삭제 - 다수 경우
  3. result 객체

 

document 삭제 - 1개 경우

 

문서를 삭제하려면 deleteOne() 메서드를 사용.

deleteOne() 메서드의 첫 번째 매개변수는 삭제할 문서를 정의하는 쿼리 객체임.

참고 : 쿼리에서 둘 이상의 문서를 찾으면 첫 번째 항목만 삭제됨.

 


1. C:\User\사용자명\hz.js 생성.

 

var MongoClient = require('mongodb').MongoClient;

var url = "mongodb://localhost:27017/";

const options = {useUnifiedTopology: true}; 


MongoClient.connect(url, options, function(err, db) {

  if (err) throw err;

  var dbo = db.db("hz");

  var myquery = { mb_level: '10' };

  dbo.collection("hz_member").deleteOne(myquery, function(err, obj) {

    if (err) throw err;

    console.log("1 document 삭제 완료.");

    db.close();

  });

});

 


2. CMD 모드에서 아래 명령어 입력해 시작 설정.

 

C:\User\사용자명>node hz.js

 


[결과값]

 

1 document 삭제 완료.

 

 

document 삭제 - 다수 경우

 

둘 이상의 문서를 삭제하려면 deleteMany() 메서드 사용.

deleteMany()메서드의 첫 번째 매개 변수는 삭제할 문서를 정의하는 쿼리 개체임.

 


1. C:\User\사용자명\hz.js 생성.

 

var MongoClient = require('mongodb').MongoClient;

var url = "mongodb://localhost:27017/";

const options = {useUnifiedTopology: true}; 


MongoClient.connect(url, options, function(err, db) {

  if (err) throw err;

  var dbo = db.db("hz");

  var myquery = { mb_level: /^5/ };

  dbo.collection("hz_member").deleteMany(myquery, function(err, obj) {

    if (err) throw err;

    console.log(obj.result.n + " document(s) 삭제완료");

    db.close();

  });

});

 


2. CMD 모드에서 아래 명령어 입력해 시작 설정.

 

C:\User\사용자명>node hz.js

 


[결과값]

 

4 document(s) 삭제완료

 

 

result 객체

 

1.

deleteMany() 메서드 실행하면, 쿼리가 테이블에 미치는 영향 정보가 담긴 객체를 반환하는데, 이 객체 내부의 한 객체인 "result"는 실행이 정상인지, 얼마나 많은 문서가 영향을 받았는지 정보를 알려줌.

obj.result = { n: 4, ok: 1 }

※ n : 영향 받은 개수.

※ ok : 실행 정상 여부.

 

2. 

result 객체 안의 각 속성의 속성값 접근 방법

obj.result.property 

(예)

obj.result.n = 4; // 영향 받은 개수

obj.result.ok = 1 // 실행 정상 여부

 

3.

콘솔에 삭제된 문서 개수 출력하기.

console.log(obj.result.n); // 4

주의: console.log()는 JS 명령어라, CMD 모드에 바로 입력 불가. 

 



분류 제목
module Node.js - dgram 모듈 - UDP 데이터 그램 소켓의 구현을 제공.
module Node.js - dns 모듈 - DNS 조회 및 도메인 관련 작업 수행.
module Node.js - domain 모듈 - 처리 안 된 에러 처리. [폐기예고]
module Node.js - events 모듈 - 이벤트 처리.
module Node.js - fs 모듈 ★ - 파일 시스템. (= 파일읽기, 파일생성, 파일수정, 파일삭제, 파일명변경…
module Node.js - http 모듈 ★ - Node.js를 HTTP 서버로 사용. (= http 통해서 데이터 …
module Node.js - https 모듈 - Node.js를 HTTPS 서버로 사용. (= https 통해서 데이터…
module Node.js - net 모듈 - 서버와 클라이언트 생성.
module Node.js - os 모듈 - 운영체제에 대한 정보 제공.
module Node.js - path 모듈 ★ - 파일 경로 처리.
module Node.js - punycode 모듈 - 문자 인코딩 방식. [폐기예고]
module Node.js - querystring 모듈 - URL 쿼리 문자열을 구문 분석.
module Node.js - readline 모듈 - 한 번에 한 줄씩 데이터 스트림 읽기
module Node.js - stream 모듈 - 스트리밍 데이터 처리.
module Node.js - string_decoder 모듈 - Buffer 객체를 문자열로 디코딩.
module Node.js - timers 모듈 - 지정된 시간에 나중에 호출.
module Node.js - tls 모듈 - TLS 및 SSL 프로토콜을 구현.
module Node.js - tty 모듈 - 텍스트 터미널에서 사용하는 클래스를 제공.
module Node.js - url 모듈 - URL 문자열 구문 분석.
module Node.js - util 모듈 - 일부 유틸 함수에 대한 접근 허용.
3/4
목록
찾아주셔서 감사합니다. Since 2012