本篇文章主要介紹mongoose的一些常用api。
安裝數據庫連接中間件
npm install mongoose -s
進入mongodb安裝目錄,找到bin文件夾執行命令
> mongod --dbpath=項目的db路徑 注:每次重新連接之前,需要把 .lock文件刪掉
可以去官網下載mongodb可視化的操作工具,操作數據庫
https://robomongo.org/download
首先,我們還是需要搭建node + express架構
// 構建express服務器 var express = require("express"); var server = express(); // 采用Promise,判斷,先連接數據庫成功后啟動服務器。 new Promise((resolve,reject)=>{ //連接mongodb var mongoose = require("mongoose"); mongoose.connect("mongodb://localhost:27017",(error)=>{ if(error) { console.log("數據庫連接失敗"); console.log(error); }else { console.log("數據庫連接成功"); resolve(); } }) }).then(()=>{ server.listen(8080,"localhost",(req,res)=>{ console.log("服務器啟動 @ localhost:8080"); }) // 將數據庫的模型操作封裝到handleDB js文件中,當服務器啟動成功之后,獲取db model 的數據 require("./handleDB"); })
新建js文件handleDB
var mongoose = require("mongoose"); //定義表字段以及字段類型 var userSchema = ({ username:String, password:String, age:Number, sex:{ type:String, default:"女" } })
// 表的名字 user const UserModel = mongoose.model("user",userSchema);
插入一條數據
const userModel = new UserModel({ username:"aaa", password:"223434", age:22, sex:"女" }) userModel.save().then((result)=>{ if(result) { console.log("一條數據插入成功"); console.log(result); } else { console.log("數據保存失敗"); } });
組裝條件查詢
//按照條件查詢,使用where UserModel.where({ username:"aaa" }).find().then(res=>{ if(res) { console.log("--------------findWhere-------------------"); console.log(res); } }) //也可以把條件寫到find({})里面,實現where同樣的效果 UserModel.find({ username:"aaa" }).then(res=>{ if(res) { console.log("--------------find()-----------------------"); console.log(res); } })
根據id查詢
UserModel.findById("5acc7d3b948dfe204475d02e").then(res=>{ if(res) { console.log("-------------------findById------------------"); console.log(res); } })
update操作
/修改操作,修改查詢到的第一個 UserModel.update( //條件查詢 {age:22}, {sex:"nvnvnv"} ).then(res=>{ console.log("---------------------update-----------------") console.log(res); }) UserModel.findByIdAndUpdate("5acc7d3b948dfe204475d02e",{username:"hahaaaaaaaaaaaaaaaaa"}) .then(res=>{ console.log("-----------findByIdAndUpdate-----------"); console.log(res); }) UserModel.findOneAndUpdate({username:"aaa",username:"dh"}).then(res=>{ if(res) { console.log("--------------findOneAndUpdate-----------"); console.log(res); } })
刪除操作
UserModel.remove({username:"aaa2"}).then(res=>{ if(res) { console.log("----------remove0-------------"); console.log(res); } })
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/94120.html
本篇文章主要介紹mongoose的一些常用api。安裝數據庫連接中間件 npm install mongoose -s 進入mongodb安裝目錄,找到bin文件夾執行命令 > mongod --dbpath=項目的db路徑 注:每次重新連接之前,需要把 .lock文件刪掉 可以去官網下載mongodb可視化的操作工具,操作數據庫 https://robomongo.org/download ...
摘要:本文源碼簡介之前剛入門并做好了一個簡而全的純全家桶的項目,數據都是本地模擬請求的詳情請移步這里為了真正做到數據庫的真實存取,于是又開始入門了并以此來為之前的頁面寫后臺數據接口。 本文源碼:Github 簡介: 之前剛入門vue并做好了一個簡而全的純vue2全家桶的項目,數據都是本地 json 模擬請求的;詳情請移步這里:vue-proj-demo 為了真正做到數據庫的真實存取,于是又...
摘要:執行安裝依賴項,然后執行啟動程序。模板的內容保存在內存中,性能會得到顯著提升。視圖查找當或被調用時,會先檢查是否有文件在這個絕對路徑上。代碼清單修改了之前的實現,給出照片被上傳時提供的名稱,比如 Express起步 安裝ExpressshowImg(https://segmentfault.com/img/bVXsFT?w=800&h=44); 一個最小的Express 程序showI...
摘要:使用內在模塊發送響應數據監聽端口終端打印如下信息使用框架本項目使用的框架來起服務器。數據庫中文檔每一行的數據的數據結構和基本一樣,所有存儲在集合中的數據都是格式,是一種類的一種二進制形式的存儲格式,簡稱。 前言 經過上一篇經濟基礎構建的完成,那么現在正式開始碼代碼吧! 項目架構 showImg(https://segmentfault.com/img/bVNkQM?w=322&h=58...
閱讀 3205·2021-11-17 09:33
閱讀 3288·2021-11-15 11:37
閱讀 2950·2021-10-19 11:47
閱讀 3199·2019-08-29 15:32
閱讀 1002·2019-08-29 15:27
閱讀 1526·2019-08-29 13:15
閱讀 932·2019-08-29 12:47
閱讀 2023·2019-08-29 11:30