zoukankan      html  css  js  c++  java
  • node.js封装数据库增删改查

    数据库增删改查的封装

    小编不容易

    const sql = {
      insert: function (Collection, insertData) {
        return new Promise((resolve, reject) => {
          Collection.insertMany(insertData, (err) => {
            if (err) throw err;
            resolve()
          })
        })
      },
      find (Collection, whereObj, showObj) {
        // return new Promise(function (resolve, reject) {})
        // return new Promise(function (resolve, reject) { // 异步操作})
        // return new Promise(function (resolve, reject) { // 异步操作 - reslove(data)})
        return new Promise(function (resolve, reject) {
          Collection.find(whereObj, showObj).exec((err, data) => {
            if (err) throw err;
            resolve(data)
          })
        })
    
      },
      sort: function * (Collection, whereObj, showObj, sortObj) {
        return new Promise(function (resolve, reject) {
          Collection.find(whereObj, showObj).sort(sortObj).exec((err, data) => {
            if (err) throw err;
            resolve(data)
          })
        })
      },
      update (Collection, whereObj, updateObj, updateType) {
        // Collection['updateOne']()   <===> Collection.updateOne()
        // style.width = '100px'    style['width'] = '100px';
        return new Promise((resolve, reject) => {
          updateType = updateType || 'updateOne'
          Collection[updateType](whereObj, updateObj, (err) => {
            if (err) throw err;
            resolve();
          })
        })
      },
      delete (Collection, whereObj, deleteType) {
        return new Promise((resolve, reject) => {
          deleteType = deleteType || 'deleteOne';
          Collection[deleteType](whereObj, (err) => {
            if (err) throw err;
            resolve();
          })
        })
      },
      distinct(Collection, type) {
        return new Promise((resolve, reject) => {
          Collection.distinct(type).exec((err, data) => {
            if (err) throw err;
            resolve(data)
          })
    
        })
      }
    }
    
    module.exports = sql;
    
  • 相关阅读:
    git merge branch
    Notes on Large-scale Video Classification with Convolutional Neural Networks
    ubuntu shell编程笔记
    cpu-z for ubuntu 12.04 64bit : cpu-g
    Notation, First Definitions 转 http://brnt.eu/phd/node9.html
    textext for Inkscape
    read later
    Matlab远程调试 转
    Ubuntu中的在文件中查找和替换命令
    Ubuntu 下matlab 查看memory函数
  • 原文地址:https://www.cnblogs.com/wangjiahui/p/11358766.html
Copyright © 2011-2022 走看看