搜尋
首頁web前端js教程NodeJS學習筆記之MongoDB模組_node.js

一,開頭分析

這篇屬於擴充知識篇,因為在下面的文章中會用到資料庫操作,所以今天就來談談它(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」類型的資料庫,想法很重要。

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
JavaScript引擎:比較實施JavaScript引擎:比較實施Apr 13, 2025 am 12:05 AM

不同JavaScript引擎在解析和執行JavaScript代碼時,效果會有所不同,因為每個引擎的實現原理和優化策略各有差異。 1.詞法分析:將源碼轉換為詞法單元。 2.語法分析:生成抽象語法樹。 3.優化和編譯:通過JIT編譯器生成機器碼。 4.執行:運行機器碼。 V8引擎通過即時編譯和隱藏類優化,SpiderMonkey使用類型推斷系統,導致在相同代碼上的性能表現不同。

超越瀏覽器:現實世界中的JavaScript超越瀏覽器:現實世界中的JavaScriptApr 12, 2025 am 12:06 AM

JavaScript在現實世界中的應用包括服務器端編程、移動應用開發和物聯網控制:1.通過Node.js實現服務器端編程,適用於高並發請求處理。 2.通過ReactNative進行移動應用開發,支持跨平台部署。 3.通過Johnny-Five庫用於物聯網設備控制,適用於硬件交互。

使用Next.js(後端集成)構建多租戶SaaS應用程序使用Next.js(後端集成)構建多租戶SaaS應用程序Apr 11, 2025 am 08:23 AM

我使用您的日常技術工具構建了功能性的多租戶SaaS應用程序(一個Edtech應用程序),您可以做同樣的事情。 首先,什麼是多租戶SaaS應用程序? 多租戶SaaS應用程序可讓您從唱歌中為多個客戶提供服務

如何使用Next.js(前端集成)構建多租戶SaaS應用程序如何使用Next.js(前端集成)構建多租戶SaaS應用程序Apr 11, 2025 am 08:22 AM

本文展示了與許可證確保的後端的前端集成,並使用Next.js構建功能性Edtech SaaS應用程序。 前端獲取用戶權限以控制UI的可見性並確保API要求遵守角色庫

JavaScript:探索網絡語言的多功能性JavaScript:探索網絡語言的多功能性Apr 11, 2025 am 12:01 AM

JavaScript是現代Web開發的核心語言,因其多樣性和靈活性而廣泛應用。 1)前端開發:通過DOM操作和現代框架(如React、Vue.js、Angular)構建動態網頁和單頁面應用。 2)服務器端開發:Node.js利用非阻塞I/O模型處理高並發和實時應用。 3)移動和桌面應用開發:通過ReactNative和Electron實現跨平台開發,提高開發效率。

JavaScript的演變:當前的趨勢和未來前景JavaScript的演變:當前的趨勢和未來前景Apr 10, 2025 am 09:33 AM

JavaScript的最新趨勢包括TypeScript的崛起、現代框架和庫的流行以及WebAssembly的應用。未來前景涵蓋更強大的類型系統、服務器端JavaScript的發展、人工智能和機器學習的擴展以及物聯網和邊緣計算的潛力。

神秘的JavaScript:它的作用以及為什麼重要神秘的JavaScript:它的作用以及為什麼重要Apr 09, 2025 am 12:07 AM

JavaScript是現代Web開發的基石,它的主要功能包括事件驅動編程、動態內容生成和異步編程。 1)事件驅動編程允許網頁根據用戶操作動態變化。 2)動態內容生成使得頁面內容可以根據條件調整。 3)異步編程確保用戶界面不被阻塞。 JavaScript廣泛應用於網頁交互、單頁面應用和服務器端開發,極大地提升了用戶體驗和跨平台開發的靈活性。

Python還是JavaScript更好?Python還是JavaScript更好?Apr 06, 2025 am 12:14 AM

Python更适合数据科学和机器学习,JavaScript更适合前端和全栈开发。1.Python以简洁语法和丰富库生态著称,适用于数据分析和Web开发。2.JavaScript是前端开发核心,Node.js支持服务器端编程,适用于全栈开发。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。