使用nodejs如何操作mongodb的填删改查模块
下面我就为大家分享一篇nodejs操作mongodb的填删改查模块的制作及引入实例,具有很好的参考价值,希望对大家有所帮助。
安装相关模块
如果使用这个的话,你需要先自己安装一下他需要的模块,在根目录输入
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;
我存入到了一个名字叫server.js的文件名内
使用
我们在需要使用页面先将模块引入,比如我在路由文件index.js里面引入:
const Server = require("../server.js");
然后需要实例化对象,如下:
let server = new Server();
如果需要配置相关信息,可以在实例化的时候传入一个对象配置,可以配置数据库的地址:
let server = new Server({url:"mongodb://localhost:27017/mydb"});
里面封装了四个方法,添删改查,分别是
添加方法
server.insert(数据表名,需要插入的数据(键值对的对象),回调函数);
更新方法
server.update(数据表名,查询的数据(对象),更新的数据(对象),回调函数);
删除方法
server.delete(数据表名,查询的数据(对象),回调函数);
查找方法
server.find(数据表名,查询的数据(对象),回调函数);
回调函数都会返回两个值,第一个布尔类型,是否处理成功,第二个值,查找返回查找到的个数,别的都返回处理成功的个数(现在一次只处理一条)
使用案例
比如我需要在一个路由里面查找数据,我就需要这样:
server.find("users",{username:"username"},function (bool,data) { if(bool){ console.log("查询到数据为"+data.length+"条"); } else{ console.log(data); } }); });
上面的代码是查询了users表里面username为username的字段的数据,如果成功,后面data就会返回一个数组,如果出现错误,就直接返回data错误。
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
Atas ialah kandungan terperinci 使用nodejs如何操作mongodb的填删改查模块. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



.NET 4.0 digunakan untuk mencipta pelbagai aplikasi dan ia menyediakan pemaju aplikasi dengan ciri yang kaya termasuk: pengaturcaraan berorientasikan objek, fleksibiliti, seni bina berkuasa, penyepaduan pengkomputeran awan, pengoptimuman prestasi, perpustakaan yang luas, keselamatan, Kebolehskalaan, akses data dan mudah alih sokongan pembangunan.

Artikel ini memperkenalkan cara mengkonfigurasi MongoDB pada sistem Debian untuk mencapai pengembangan automatik. Langkah -langkah utama termasuk menubuhkan set replika MongoDB dan pemantauan ruang cakera. 1. Pemasangan MongoDB Pertama, pastikan MongoDB dipasang pada sistem Debian. Pasang menggunakan arahan berikut: SudoaptDateSudoaptInstall-ImongoDB-Org 2. Mengkonfigurasi set replika replika MongoDB MongoDB Set memastikan ketersediaan dan kelebihan data yang tinggi, yang merupakan asas untuk mencapai pengembangan kapasiti automatik. Mula MongoDB Service: sudosystemctlstartmongodsudosys

Artikel ini menerangkan cara membina pangkalan data MongoDB yang sangat tersedia pada sistem Debian. Kami akan meneroka pelbagai cara untuk memastikan keselamatan data dan perkhidmatan terus beroperasi. Strategi Utama: Replicaset: Replicaset: Gunakan replika untuk mencapai redundansi data dan failover automatik. Apabila nod induk gagal, set replika secara automatik akan memilih nod induk baru untuk memastikan ketersediaan perkhidmatan yang berterusan. Sandaran dan Pemulihan Data: Secara kerap Gunakan perintah Mongodump untuk membuat sandaran pangkalan data dan merumuskan strategi pemulihan yang berkesan untuk menangani risiko kehilangan data. Pemantauan dan penggera: Menyebarkan alat pemantauan (seperti Prometheus, Grafana) untuk memantau status MongoDB dalam masa nyata, dan

Tidak mustahil untuk melihat kata laluan MongoDB secara langsung melalui Navicat kerana ia disimpan sebagai nilai hash. Cara mendapatkan kata laluan yang hilang: 1. Tetapkan semula kata laluan; 2. Periksa fail konfigurasi (mungkin mengandungi nilai hash); 3. Semak Kod (boleh kata laluan Hardcode).

Node ialah persekitaran di mana anda boleh menjalankan kod JavaScript "Di luar pelayar web". Node be like – "Hei anda semua, anda berikan kod JS anda kepada saya dan saya akan menjalankannya ". Ia menggunakan Enjin V8 Google untuk menukar kod JavaScript kepada Kod Mesin. Memandangkan Node menjalankan kod JavaScript di luar pelayar web, ini bermakna ia tidak mempunyai akses kepada ciri tertentu yang hanya tersedia dalam penyemak imbas, seperti DOM atau objek tetingkap atau pun localStorage.

Semasa merakam menggunakan JavaScript, kami menghadapi keperluan: aliran gumpalan yang direkodkan perlu ...

Pinetwork akan melancarkan Pibank, platform perbankan mudah alih revolusioner! Pinetwork hari ini mengeluarkan kemas kini utama mengenai Pimisrbank Elmahrosa (muka), yang disebut sebagai Pibank, yang mengintegrasikan dengan baik perkhidmatan perbankan tradisi C). Apakah pesona Pibank? Mari kita cari! Fungsi utama Pibank: Pengurusan sehenti akaun bank dan aset cryptocurrency. Menyokong urus niaga masa nyata dan mengamalkan biospesies

Penjelasan terperinci mengenai strategi sandaran yang cekap MongoDB di bawah sistem CentOS Artikel ini akan memperkenalkan secara terperinci pelbagai strategi untuk melaksanakan sandaran MongoDB pada sistem CentOS untuk memastikan kesinambungan data dan kesinambungan perniagaan. Kami akan merangkumi sandaran manual, sandaran masa, sandaran skrip automatik, dan kaedah sandaran dalam persekitaran kontena Docker, dan menyediakan amalan terbaik untuk pengurusan fail sandaran. Sandaran Manual: Gunakan perintah Mongodump untuk melakukan sandaran penuh manual, contohnya: Mongodump-Hlocalhost: 27017-U Pengguna-P Password-D Database Data-O/Backup Direktori Perintah ini akan mengeksport data dan metadata pangkalan data yang ditentukan ke direktori sandaran yang ditentukan.
