mongoDB筆記

一、基本操作

  1. 準(zhǔn)備工作

    下載

    安裝

    配置環(huán)境變量在安裝目錄的bin目錄為環(huán)境變量的路徑

    最后cmd輸入mongod --version測試是否安裝成功

  2. 啟動和關(guān)閉數(shù)據(jù)庫

mongod
 #默認(rèn)存儲路徑為安裝盤的根路徑/data/db 作為存儲的目錄
 #所以在第一次使用的時候要新建一個/data/db
 ?
 ?
 #修改默認(rèn)路徑
 mongod --dbpath=數(shù)據(jù)存儲目錄路徑
停止:

crtl+c 或者直接關(guān)掉控制臺
  1. 鏈接數(shù)據(jù)庫

    mongo可以鏈接默認(rèn)鏈接本機(jī)服務(wù)

    輸入exit可以斷開鏈接

  2. 基本命令

    #查看顯示所有數(shù)據(jù)庫
    show dbs
    ?
    #創(chuàng)建數(shù)據(jù)庫
    ##切換到指定數(shù)據(jù)庫(如果沒有就新建)
    use 數(shù)據(jù)庫名稱
    ?
    #查看當(dāng)前操作的數(shù)據(jù)庫
    db

二、node中操作MongoDB

  1. 使用官方的mongodb包來操作

  2. 使用第三方mongoose來操作mongoDB

    基于官方包再一次做了封裝,名字叫mongoose

    https://mongoosejs.com/

    npm i mongoose
基本使用
    const mongoose = require('mongoose');
    //導(dǎo)入包
    ?
    mongoose.connect('mongodb://localhost:27017/test', {useNewUrlParser: true});
    //鏈接數(shù)據(jù)庫
    ?
    const Cat = mongoose.model('Cat', { name: String });
    //創(chuàng)建表cat為表的名字  其中還有一個name值 值的類型為字符串string
    ?
    const kitty = new Cat({ name: 'Zildjian' });
    創(chuàng)建一個cat實例在其中存入一個name為Zildjian
    ?
    kitty.save().then(() => console.log('meow'));
    //持久化保存kitty實例 然后如果成功則輸出meow
添加數(shù)據(jù)
 var admin = new User([
 ?
  username: ' admin',

  password: ' 123456' , 
 ?
  email: 'admin@admin.com'
  )}
 ?
  admin.save(function (err, ret) {
  if(err){
  console.log('保存失敗')
  }else{
  console.log('保存成功')
  console.log(ret)
  }
  })
查詢數(shù)據(jù)
    User.find({
     name:'xxx'   //查詢條件  name為xxx 沒有就是查詢所有  findOne就是查詢一個
    },function(err.ret){
     if(err){
     console.log('查詢失敗')
     } else{
     console.log(ret)
     }
    })</pre>

    刪除

User.remove({
 name:'xxx'   //刪除條件  name為xxx 沒有就是刪除所有  removeOne就是刪除一個
},function(err.ret){
 if(err){
 console.log('刪除失敗')
 } else{
 console.log('刪除成功')
 console.log(ret)
 }
})

    更新數(shù)據(jù)

//通過id查詢更新 第一個參數(shù)是id,第二個是要更新的內(nèi)容,第三個是回調(diào)
User.findByIdAndUpdate('xxxxxxxxxxx',{},function(err,ret){
 if(err){
 console.log('更新失敗')
 }else{
 console.log('更新成功')
 }
})
?
?
//根據(jù)條件更新所有
Model.update(conditions, doc, [options], [callback])
?
//根據(jù)指定條件更新一個
Model.findOneAndUpdate([condtitons], [update], [options], [callback])
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容