標籤:
其中還有,nodejs遠端連線mysql資料庫
一,開篇分析
這篇屬於擴充知識篇,因為在下面的文章中會用到資料庫操作,所以今天就來說說它(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)可通過網路訪問。
一、根據之前的文章啟動mongo資料庫時,
在shell 命令視窗鍵入如下命令:" use bb" (use 命令用來切換當前資料庫,如果該資料庫不存在,則會先建立一個)。
在shell 命令視窗鍵入如下命令:“ db.users.insert({"name":"bigbear","password":"12345678"})”,(這條命令是向users 集合中插入一條資料,如果集合users不存在,則會先建立一個,然後再插入資料,參數以JSON格式傳入)。在shell 命令視窗鍵入如下命令:“db.users.find()” (顯示users集合下的所有資料文檔),如:
注意圖中的“_id”,系統給每條記錄自動分配了一個惟一主鍵 _id 。
好了!基本的功能夠用了,後面如果需要額外的操作逐步補充,由於篇幅有限主要說的是NodeJS操作Mongodb,所以暫時告一段落。
二、然後進入用nodejs操作該資料庫的部分
var mongodb = require("mongodb") ; var server = new mongodb.Server("localhost",27017,{ auto_reconnect : true }) ; var conn = new mongodb.Db("wly",server,{ safe : true }) ; conn.open(function(error,db){ if(error) throw error ; db.collection("users",{ safe : true },function(err,collection){ if(err) throw err ; collection.find().toArray(function(e,docs){ if(e) throw e ; console.log(docs) ; }) ; }) ; }) ;
結果如:
NodeJS學習筆記之MongoDB模組