首頁 > web前端 > js教程 > 主體

NodeJS學習筆記之MongoDB模組_node.js

WBOY
發布: 2016-05-16 16:20:24
原創
1751 人瀏覽過

一,開頭分析

這篇屬於擴充知識篇,因為在下面的文章中會用到資料庫操作,所以今天就來談談它(Mongodb模組)。

(1),簡介

 MongoDB是一個基於分散式檔案儲存的資料庫。由C 語言編寫。旨在為WEB應用提供可擴展的高效能資料儲存解決方案。

 MongoDB是一個高效能,開源,無模式的文檔型資料庫,是目前NoSql資料庫中比較熱門的一種。

 MongoDB是一個介於關聯式資料庫與非關聯式資料庫之間的產品,是非關聯式資料庫當中功能最豐富,最像關聯式資料庫的。他支援的資料結構非常鬆散,是類似json的bjson格式,因此可以儲存比較複雜的資料類型。 Mongo最大的特點是他支援的查詢語言非常強大,其語法有點類似於物件導向的查詢語言,幾乎可以實現類似關係型資料庫單表查詢的絕大部分功能,而且還支援對資料建立索引。

傳統的關聯式資料庫一般由資料庫(database)、表(table)、記錄(record)三個層次概念組成,MongoDB是由資料庫(database)、集合(collection)、文件物件(document)三個層次組成。

MongoDB對於關聯式資料庫裡的表,但是集合中沒有列、行和關聯概念,這體現了模式自由的特徵。

(2),特點

 它的特點是高效能、易於部署、易於使用,儲存資料非常方便。主要功能特性有:

 1)面向集合存儲,易儲存物件類型的資料。
 2)模式自由。
 3)支援動態查詢。
 4)支援完全索引,包含內部物件。
 5)支援查詢。
 6)支援複製和故障恢復。
 7)使用高效的二進位資料存儲,包括大型物件(如視訊等)。
 8)自動處理碎片,以支援雲端運算層次的擴展性。
 9)支援RUBY,PYTHON,JAVA,C ,PHP,C#等多種語言。
 10)檔案儲存格式為BSON(一種JSON的擴充)。
 11)可透過網路存取。

(3),安裝使用

  1,下載並解壓縮 "mongodb" 到指定目錄,如下:

  2,其中有兩個最重要的檔案:」Mongod.exe「和」Mongo.exe「 。

   Mongod.exe ------ 用來連接到mongo資料庫伺服器的,也就是伺服器端。
   Mongo.exe ------ 用來啟動MongoDB shell的,也就是客戶端。

二,分步驟操作

  (1),新建一個目錄,例如:”>mongod -dbpath data/db“ 。

  (2),開啟瀏覽器輸入:“http://127.0.0.1:27017/”,見下列字樣:

  "You are trying to access MongoDB on the native driver port. For http diagnostic access, add 1000 to the port number",表示已成功。

  到此,MongoDB資料庫服務已經成功啟動了。

  (3),建立資料庫------進入CMD,鍵入指令「mongo.exe」 出現下列介面:

  (4),在shell 指令視窗鍵入以下指令:" use bb" (use 指令用來切換目前資料庫,如果資料庫不存在,則會先新建一個)。

  (5),在shell 命令視窗鍵入以下命令:" db.users.insert({"name":"bigbear","password":"12345678"})”,

  (這條指令是向users 集合中插入一條數據,如果集合users不存在,則會先新建一個,然後再插入數據,參數以JSON格式傳入)。

  (6),在shell 指令視窗鍵入下列指令:「db.users.find()」 (顯示users集合下的所有資料文件),如下圖:

   注意圖中的“_id”,系統給每個記錄自動分配了一個惟一主鍵 _id 。

  好了!基本的功能夠用了,後面如果需要額外的操作逐步補充,由於篇幅有限主要說的是NodeJS操作Mongodb,所以暫時告一段落。

 三,進入主題,實例分析

  (1),npm install mongodb (下載後放入製定目錄下)。

  (2),之前我們已經建立好了資料庫與集合("bb","users")

複製程式碼 程式碼如下:

 var mongodb = require("mongodb") ;
 var server = new mongodb.Server("localhost",27017,{
     自動重新連線:true
 }) ;
 var conn = new mongodb.Db("bb",server,{
     安全:正確
 }) ;
 conn.open(函數(錯誤,db){
     if(error) 拋出錯誤;
     db.collection("使用者",{
         安全:正確
     },函數(錯誤,集合){
         if(err) 拋出錯誤;
         collection.find().toArray(function(e,docs){
             if(e) 拋出 e ;
             console.log(文件) ;
         });
     }) ;
 }) ;

運行結果如下:

複製程式碼程式碼如下:

 [
     {
         _id: 54b3ce920dc20a3ba9607f
         名稱:'大熊',
         密碼:'12345678'
     }
 ]

四,總結一下

(1),熟練使用MongoDB資料庫。 (2),理解與關係型資料庫之間的差異化。
(3),透過上述例子,掌握NodeJS如何操作MongoDB。
(4),強調一句話:如何設計「NoSQL」類型的資料庫,想法很重要。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板