摘要:安裝首先要安裝,具體安裝過程參考菜鳥教程運(yùn)行因?yàn)槲沂?,所以以下?nèi)容以系統(tǒng)為主,系統(tǒng)建議參考菜鳥教程進(jìn)入的文件目錄下,運(yùn)行執(zhí)行文件以管理員身份運(yùn)行然后另開一個(gè)命令行,同樣進(jìn)入的文件目錄下,運(yùn)行執(zhí)行文件,然后便會進(jìn)入的環(huán)境進(jìn)入的環(huán)境在的環(huán)境中可
安裝mongodb
首先要安裝mongodb,具體安裝過程參考菜鳥教程
運(yùn)行mongodb因?yàn)槲沂莔ac,所以以下內(nèi)容以O(shè)S系統(tǒng)為主,Windows系統(tǒng)建議參考菜鳥教程
進(jìn)入mongodb的bin文件目錄下,運(yùn)行mongod執(zhí)行文件
sudo ./mongod //以管理員身份運(yùn)行
然后另開一個(gè)命令行,同樣進(jìn)入mongodb的bin文件目錄下,運(yùn)行mongo執(zhí)行文件,然后便會進(jìn)入mongodb的shell環(huán)境
./mongo //進(jìn)入mongodb的shell環(huán)境 >2+2 4
在mongodb的shell環(huán)境中可以直接操作數(shù)據(jù)庫,語法請參考菜鳥教程
但shell操作比較反人類,我在這里推薦mongodb的GUI軟件——Robo 3T,可以自行在官網(wǎng)下載
在nodejs環(huán)境中我選擇的是mongoose模塊
var mongoose=require("mongoose")mongoose語法
詳情請戳mongoose官網(wǎng)
連接數(shù)據(jù)庫
mongoose.connect("mongodb://localhost:27017/test")//test即為存儲的數(shù)據(jù)庫名稱,如果不存在將會自動生成定義Schema和model
var CatSchema=mongoose.Schema({ name:String, age:Number }) var Cat=mongoose.model("Cat",CatSchema) //也可以合二為一,直接定義model var Cat=mongoose.model("Cat",{ name:String, age:Number }) //mongoose.model的第一個(gè)參數(shù)的字符串加上字母s便是儲存在的數(shù)據(jù)庫表單的名稱(Cats)
mongoose Schema常用預(yù)置類型:
String 字符串
Number 數(shù)字
Date 日期
Boolean 布爾值
和數(shù)組結(jié)合:[String] [Number]...
創(chuàng)建實(shí)例var kitty=new Cat({ name:"Kitty", age:3 })插入
kitty.save(function(err,res){ if(err) console.error(err) else console.log(res)//res為保存成功的對象 })更新
var where={ name:"Kitty" } var update={ age:4 } Cat.update(where,update,function(err,res){ if(err) console.error(err) else console.log(res) })
通過ID查找并更新的方法
Cat.findByIdAndUpdate(whereById,update,function(err,res)){ if(err) console.error(err) else console.log(res) })刪除
Cat.remove(where,function(err,res)) //通過ID查找并刪除 Cat.findByIdAndRomove(where,function(err,res))查找
Cat.find(where,function(err,res))//res 返回查找到的對象數(shù)組 //可以限定輸出的內(nèi)容 var opt={ name:1//選擇輸出的值為1,不輸出的值為0(其他不指定默認(rèn)為0) } Cat.find(where,opt,function(err,res)) //var where=_id Cat.findById(where,function(err,res))//res 輸出查詢到的對象查詢
Cat.count(where,function(err,res))//res輸出查詢數(shù)量
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/19169.html
摘要:使用,可參考執(zhí)行退出命令,只要設(shè)置,即可。下節(jié)主要實(shí)現(xiàn)注冊時(shí)的郵件驗(yàn)證保存登錄狀態(tài)異常處理,同步異步操作全棧工程技術(shù)新群上一篇公司項(xiàng)目實(shí)踐下一篇待續(xù) 一、前言 ???書接上回,我們搭建了WEB服務(wù)端路由、模板等功能,完成了register 通過ajax與后端的通信,今天主要完成數(shù)據(jù)與mongodb的存取,實(shí)現(xiàn)注冊 / 登錄 / 退出功能 ???DEMO GIT https://gi...
摘要:本文詳細(xì)介紹如何部署項(xiàng)目到阿里云上,以及本人在部署過程中所遇到的問題坑點(diǎn)和解決辦法,可以說是全網(wǎng)最全最詳細(xì)的教程了。同時(shí)講解了如何申請阿里云免費(fèi)證書,以及一臺服務(wù)器配置多網(wǎng)站的配置方法等。優(yōu)惠券阿里云產(chǎn)品通用代金券最高元。 本文詳細(xì)介紹如何部署NodeJS項(xiàng)目到阿里云ECS上,以及本人在部署過程中所遇到的問題、坑點(diǎn)和解決辦法,可以說是全網(wǎng)最全最詳細(xì)的教程了。同時(shí)講解了如何申請阿里云免費(fèi)...
摘要:連接數(shù)據(jù)庫引子博客肯定是以用戶為中心,包括用戶的注冊,用戶的登錄,用戶發(fā)表留言,對留言進(jìn)行評價(jià)等等功能,所以,自然離不開數(shù)據(jù)庫。概念解析在中基本的概念是文檔集合數(shù)據(jù)庫。這兩種方式連接都需要,或者主機(jī)名字,數(shù)據(jù)庫名字,端口號,配置項(xiàng)等。 連接數(shù)據(jù)庫 引子 博客肯定是以用戶為中心,包括用戶的注冊,用戶的登錄,用戶發(fā)表留言,對留言進(jìn)行評價(jià)等等功能,所以,自然離不開數(shù)據(jù)庫。 MongoDB M...
摘要:說明在中獲取數(shù)據(jù),不管使用回調(diào)函數(shù)還是又或者語法最后得到都是對象,不能直接操作如同普通對象一樣得到單行數(shù)據(jù)。還有就是時(shí)間格式化問題,見下面。 說明 在mongodb 中獲取數(shù)據(jù),不管使用回調(diào)函數(shù)還是Promise又或者generate 語法最后得到都是mongoose.Query對象,不能直接操作如同普通對象一樣得到單行數(shù)據(jù)。還有就是時(shí)間格式化問題,見下面。 下面示例默認(rèn)使用co 和...
閱讀 4240·2021-09-26 10:17
閱讀 883·2021-09-22 15:02
閱讀 3470·2021-09-06 15:00
閱讀 1064·2021-07-25 16:52
閱讀 2747·2019-08-29 16:16
閱讀 2523·2019-08-29 13:25
閱讀 1598·2019-08-26 13:51
閱讀 2194·2019-08-26 10:58