Node.js中Mongodb數(shù)據(jù)庫操作方法(最新推薦)
MongoDB
MongoDB是什么?
MongoDB是一個基于分布式文件存儲的數(shù)據(jù)庫
數(shù)據(jù)庫是什么?
數(shù)據(jù)庫(DataBase)是按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲和管理數(shù)據(jù)的應用程序(軟件)
數(shù)據(jù)庫作用?
對數(shù)據(jù)進行增、刪、改、查
數(shù)據(jù)庫特點?
- 速度更快(一些數(shù)據(jù)庫有特定的結(jié)構(gòu),可以加快訪問)
- 擴展性更強(多數(shù)據(jù)庫節(jié)點)
- 安全姓更強(加密)
為什么選Mongodb?
操作魚js類似,容易上手,學習成本低
核心概念
Mongodb中有三個重要概念:
- 速度更快(一些數(shù)據(jù)庫有特定的結(jié)構(gòu),可以加快訪問)
- 擴展性更強(多數(shù)據(jù)庫節(jié)點)
- 安全姓更強(加密)
理解三者關(guān)系
db.json可以理解成一個數(shù)據(jù)庫,一個數(shù)據(jù)庫服務下可以創(chuàng)建N個數(shù)據(jù)庫,它們之間不會共享任何數(shù)據(jù)。- (
json文件中的)屬性(accounts,users)所對應的數(shù)組信息,就是集合,每個集合存儲著一類特定的數(shù)據(jù),如accounts集合存儲了與賬戶相關(guān)的記錄,而 users 集合則存儲了用戶的信息。 accounts這個集合中有很多對象,每一個對象就是一個文檔(每個文檔是一個獨立的數(shù)據(jù)單元,包含多個鍵值對,每個文檔中的鍵值對(例如 “id”: “3-YLju5f3”)是一個字段)
{
"accounts": [
{
"id": "3-YLju5f3",
"title": "買電腦",
"time": "2023-02-08",
"type": "-1",
"account": "5500",
"remarks": "為了上網(wǎng)課"
},
{
"id": "3-YLju5f4",
"title": "請女朋友吃飯",
"time": "2023-02-08",
"type": "-1",
"account": "214",
"remarks": "情人節(jié)聚餐"
},
{
"id": "mRQiD4s3K",
"title": "發(fā)工資",
"time": "2023-02-19",
"type": "1",
"account": "4396",
"remarks": "終于發(fā)工資啦!~~"
}
],
"users":[
{
"id": 1,
"name": "zhangsan",
"age": 18
},
{
"id": 2,
"name": "lisi",
"age": 20
},
{
"id": 3,
"name": "wangwu",
"age": 22
}
]
}Mongodb服務
下載安裝
Mongodb下載地址:https://www.mongodb.com/try/download/community,有msi和壓縮包可以選,本次下載是采用壓縮包形式。
從MongoDB 6.0開始,官方推薦使用MongoDB Shell (mongosh) 作為新的命令行工具,而不是傳統(tǒng)的mongo.exe。
Mongosh下載地址:https://www.mongodb.com/try/download/shell?spm=5176.28103460.0.0.297c5d27VMftbK
Mongodb和Mongosh建議都解壓在C盤下的Program Files中,并且在C盤文件中,創(chuàng)建data文件夾,再在data文件夾中創(chuàng)建db文件夾作為Mongodb的默認文件夾。
// 啟動服務 mongod // or mongod --dbpath "C:\data\db // 啟動 MongoDB Shell 并連接到 MongoDB 實例 mongosh
命令行交互
數(shù)據(jù)庫命令
// 顯示所有的數(shù)據(jù)庫
show dbs
// 切換指定數(shù)據(jù)庫
use 數(shù)據(jù)庫名
// 刪除數(shù)據(jù)庫
use 數(shù)據(jù)庫名
db.dropDatabase()
// 創(chuàng)建集合
db.createCollection('集合名稱')
// 顯示當前數(shù)據(jù)庫的集合
show collections
// 刪除某個集合
db.庫名.drop()
// 重命名集合
db.庫名.renameCollection('newName')文檔命令
// 插入文檔/
db.集合名.insert(文檔對象)
// 查詢文檔
db.集合名.find(查詢條件)
// 更新文檔
db.集合名.update(查詢條件, 新文檔)
db.users.update({name: 'Bob'},{age: 18})
db.集合名.update({name:'Bob'},{$set:{age:19}})
// 刪除文檔
db.集合名.remove(查詢條件)
// remove() 方法已經(jīng)被棄用
// 刪除第一個匹配的文檔
db.collection.deleteOne( { name: '張三' });
// 刪除所有匹配的文檔
db.collection.deleteMany( { name: '張三' });到此這篇關(guān)于Node.js-Mongodb數(shù)據(jù)庫的文章就介紹到這了,更多相關(guān)Node.js Mongodb數(shù)據(jù)庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Node.js操作MongoDB數(shù)據(jù)庫實例分析
- Node.js中使用mongoose操作mongodb數(shù)據(jù)庫的方法
- node.js連接MongoDB數(shù)據(jù)庫的2種方法教程
- Node.js對MongoDB數(shù)據(jù)庫實現(xiàn)模糊查詢的方法
- Node.js連接MongoDB數(shù)據(jù)庫產(chǎn)生的問題
- node.js連接mongoDB數(shù)據(jù)庫 快速搭建自己的web服務
- 了不起的node.js讀書筆記之mongodb數(shù)據(jù)庫交互
- node.js操作mongoDB數(shù)據(jù)庫示例分享
相關(guān)文章
在Ubuntu系統(tǒng)上安裝Ghost博客平臺的教程
這篇文章主要介紹了在Ubuntu系統(tǒng)上安裝Ghost博客平臺的教程,Ghost博客平臺以Node.js寫成,需要的朋友可以參考下2015-06-06
Node.js中使用mongoskin操作mongoDB實例
這篇文章主要介紹了Node.js中使用mongoskin操作mongoDB實例,Mongous是一個輕量級的nodejs mongodb驅(qū)動,需要的朋友可以參考下2014-09-09

