mongodb를 운영하는 nodejs의 추가, 삭제, 수정, 쿼리 기능을 완벽하게 마스터하세요.

小云云
풀어 주다: 2017-12-23 09:11:47
원래의
1863명이 탐색했습니다.

이 글에서는 mongodb를 운영하는 nodejs의 추가, 삭제, 수정, 쿼리 기능을 주로 소개하고, mongodb 모듈의 설치 과정을 간략하게 분석하고, mongodb 데이터베이스를 형태로 추가, 삭제, 수정, 쿼리하는 nodejs의 관련 구현 기술을 분석합니다. 필요한 친구들이 참고하면 도움이 될 것 같아요.

관련 모듈 설치

이를 사용하려면 먼저 필요한 모듈을 설치해야 하며, 루트 디렉터리에


npm install mongodb --save
로그인 후 복사

을 입력하여 모듈을 설치하면 됩니다. 다음 단계를 진행하십시오.

파일 소개

다음은 제가 작성한 해당 코드를 인용할 수 있는 해당 디렉토리에 넣어두었습니다. 저는 express


function Mongo(options) {
  this.settings = {
    url: 'mongodb://localhost:27017/jk',
    MongoClient:require('mongodb').MongoClient,
    assert:require('assert')
  };
  for(let i in options){
    this.settings[i] = options[i];
  }
  this._run = function (fun) {
    let that = this;
    let settings = this.settings;
    this.settings.MongoClient.connect(this.settings.url, function (err, db) {
      settings.assert.equal(null, err);
      console.log("Connected correctly to server");
      fun(db, function () {
        db.close();
      });
    });
  };
  this.insert = function (collectionName, data, func) {
    //增加数据
    let insertDocuments = function (db, callback) {
      let collection = db.collection(collectionName);
      collection.insertMany([
        data
      ], function (err, result) {
        if (!err) {
          func(true);
        } else {
          func(false);
        }
        callback(result);
      });
    };
    this._run(insertDocuments);
  };
  this.update = function (collectionName, updateData, data, func) {
    //更新数据
    let updateDocument = function (db, callback) {
      let collection = db.collection(collectionName);
      collection.updateOne(updateData
        , {$set: data}, function (err, result) {
          if (!err) {
            func(true);
          } else {
            func(false);
          }
          callback(result);
        });
    };
    this._run(updateDocument);
  };
  this.delete = function (collectionName, data, func) {
    //删除数据
    let deleteDocument = function (db, callback) {
      let collection = db.collection(collectionName);
      collection.deleteOne(data, function (err, result) {
        if (!err) {
          func(true);
        } else {
          func(false);
        }
        callback(result);
      });
    };
    this._run(deleteDocument);
  };
  this.find = function (collectionName, data, func) {
    //查找数据
    let findDocuments = function (db, callback) {
      // Get the documents collection
      let collection = db.collection(collectionName);
      // Find some documents
      collection.find(data).toArray(function (err, docs) {
        if (!err) {
          func(true,docs);
        }
        else {
          func(false, err);
        }
        callback(docs);
      });
    };
    this._run(findDocuments);
  };
}
module.exports = Mongo;
로그인 후 복사

에 저장했습니다. js 파일 이름에

을 사용합니다. 먼저 사용해야 하는 페이지에 모듈을 소개합니다. 예를 들어 라우팅 파일 index.js에 소개합니다. 그런 다음 다음과 같이 개체를 인스턴스화해야 합니다.

const Server = require("../server.js");
로그인 후 복사

관련 정보를 구성해야 하는 경우 인스턴스화할 때 개체 구성을 전달할 수 있으며 데이터베이스 주소를 구성할 수 있습니다.

let server = new Server();
로그인 후 복사


Add method



let server = new Server({url:"mongodb://localhost:27017/mydb"});
로그인 후 복사

Update method


server.insert(数据表名,需要插入的数据(键值对的对象),回调函数);
로그인 후 복사

Delete method

의 네 가지 메소드인 추가, 삭제, 수정, 확인을 캡슐화합니다.


server.update(数据表名,查询的数据(对象),更新的数据(对象),回调函数);
로그인 후 복사

찾기 방법


server.delete(数据表名,查询的数据(对象),回调函数);
로그인 후 복사

콜백 함수는 두 개의 값을 반환합니다. 처리 성공 여부, 두 번째 값, 검색은 찾은 숫자를 반환하고 다른 값은 처리에 성공한 횟수를 반환합니다(현재는 하나만 반환). 한 번에 처리됨)

사용 사례


예를 들어 me 경로에서 데이터를 찾아야 하는 경우 다음이 필요합니다.

server.find(数据表名,查询的数据(对象),回调函数);
로그인 후 복사
위 코드는 필드의 데이터를 쿼리합니다. 사용자 이름은 사용자 테이블의 사용자 이름입니다. 성공하면 후속 데이터가 배열을 반환합니다. 오류가 발생하면 데이터 오류가 직접 반환됩니다. 관련 권장 사항:

PHP 데이터베이스 추가, 삭제, 수정 및 확인 방법

AngularJs 추가, 삭제, 수정 및 확인 방법

MySql의 기본 작성 방법 추가, 삭제, 수정 및 확인 구현 NodeJS

위 내용은 mongodb를 운영하는 nodejs의 추가, 삭제, 수정, 쿼리 기능을 완벽하게 마스터하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!