MongoDB 的編程操做

MongoDB 系列文章:javascript

前面文章首先介紹了 MongoDB 數據庫系統的安裝,接着介紹了 MongoDB 的 Shell 工具來操做數據庫,掌握了命令行對數據庫的增、刪、改、查,四個基本操做。如今來介紹,如何用 JavaScript 編程語言來操做 MongoDB 數據庫。java

假設有一個編程任務,但願在 node.js 程序中將數據持久保存到 MongoDB 數據庫中,請問這樣的編程任務該如何實現呢?node

下面我們經過具體案例,展現用 JavaScript 程序實現對 MongoDB 數據庫的增、刪、改、查四個基本操做。固然,在操做以前,首先須要安裝數據庫操做的 Node.js 第三方模塊:mongodb。mongodb

npm install mongodb

而後,編寫下面的 opt-mongo.js 代碼文件。數據庫

#!/usr/bin/node

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

var url = 'mongodb://localhost:27017/todo';
MongoClient.connect(url, function(err, db) {
  assert.equal(null, err);

  //db.collection('todo').insertOne({"item": "have break"});
  db.collection('todo').updateOne({"item": "have breakfast"}, {"itrem": "have launch"});
  //db.collection('todo').deleteOne({"item": "have break"});
  find(db, function() {db.close();});
});

function find(db, cb) {
  var cursor = db.collection('todo').find();

  cursor.each(function(err, doc) {
    if(doc !== null) { console.log(doc); } else { cb(); }
  });
}

程序說明:npm

  1. 首先引用 MongoDB 的客戶端,經過客戶端能夠和 MongoDB 服務器創建鏈接;
  2. 引用 assert 斷言模塊,判斷鏈接是否出錯;
  3. 定義變量 url 保存 MongoDB 服務器的地址,假設我們操做的是 todo 待辦事項列表的數據庫;
  4. 調用客戶端的 connect 方法,鏈接 MongoDB 數據庫;
  5. 回調函數兩個參數,第一個參數是 Error 對象,第二個參數是數據庫對象;
  6. 增、刪、改、查四個操做都在數據庫對象上作操做;
  7. 先定義一個查詢函數 find,兩個參數,第一個參數是數據庫對象,第二個參數是回調函數;
  8. find 函數中,你會發現 JavaScript 編程的 API 和 MongoDB Shell 的 API 幾乎相同;
  9. find 函數定義好了,在鏈接方法的回調裏面調用 find 方法;
  10. 執行程序,看一下數據庫查詢的效果;
  11. 而後,再查詢語句前面分別添加:增、刪和改,三條語句;
  12. 每添加一個語句,在命令行運行,查看效果;
  13. 註釋掉語句,而後再增長下一條語句;

經過上面的案例代碼,看到了對 MongoDB 數據庫編程操做的簡單和易用。這個文章只介紹了,增、刪、改、查四個基本操做的 API,做爲拋磚引玉。若是但願更進一步的學習,請參考 MongoDB API 的官方文檔。Node.js 原生 API 沒有關於數據庫操做的模塊,對於數據庫操做都是使用第三方模塊來完成。另一個經常使用的第三方模塊是 Mongoose 你們能夠自行查閱相關資料。編程

若是這個文章對你有用,請點贊並收藏!segmentfault

相關文章
相關標籤/搜索