mac上安裝mongoDb以及簡單使用


年初粗略學習了下node,這好幾個月沒玩,突然發現已經忘完了,還是簡單記錄下基本知識,方便再次使用時資料查找。

一、mongoDb安裝

在mac上安裝了brew的情況下,可以直接執行命令

brew install mongodb,在mac系統中往往因為需要寫入權限而要加入sudo

然后等幾分鍾就安裝好了

1、mongoDb啟動  

第一個終端窗口輸入 sudo mongod --config /usr/local/etc/mongod.conf

然后在第二個終端窗口輸入  mongo

2、mongoDb關閉

方式一:在第一個窗口直接按  control+C

方式二:在第二個窗口切換數據庫到admin  use admin  然后執行  db.shutdownServer({force : true}); 

3、mongoDb修復

有時mongoDb會因為一些錯誤而無法啟動,這時就要對其進行修復

mongod --repair

 

二、mongoDb常用語句

1、查詢庫、查詢表

show dbs  —  查詢所有的數據庫

show collections   —  查詢當前數據庫下的所有數據表

 

2、建庫和刪庫 

use myDbs  —  建立一個名為myDbs的數據庫,當這個庫存在時則是切換到這個數據庫中去

use myDbs

db.dropDatabase();  —  這兩句是刪除這個數據庫

 

3、建表和刪表

表操作都是要先到一個數據庫中去,通過use方法

db.myTable.insert({name:’hf’,age:20});  —  在mongodb中在插入數據時即創建了改表,此時創建的是名為myTable的數據表

db.myTable.drop();  —  刪除myTable這個數據表

 

4、單表的增刪改

db.myTable.insert({name:’hahaha’,age:12});  —  新增

db.myTable.update({name:’hf’},{$set:{age:25}})  —  修改,此處的操作相當於關系數據庫中的 update myTable set age = 25 where name = ‘hf’

db.myTable.remove({name:’hf'});  —  刪除,此處相當於關系數據庫中的 delete myTable where name = ‘hf’

 

5、查詢

db.myTable.find();  —  查詢myTable中的所有數據

db.myTable.find().sort({age:1})  —  根據age升續

db.myTable.find().count();  —  查詢

 

三、mongoose及其基本使用

  由於mongodb上手方便,所以經常作為nodeJS建站的數據庫,而mongoose則是NodeJS中操作mongodb一個工具庫。在mongoose中存在這么幾種鏈接、調用方式主要包括Schema、Model、Entity這3種操作類,其中Schema則是以數據類型為形式的實體,它不具備操作數據庫的能力,但是它定義了操作數據表中元素的名稱和類型;而Model則是單個表的實體,通過表的名字以及Schema中標注的類型將一個表進行實例化;那么最后一個Entity可以認為是表中單行的實例對象,可以對單行進行簡單的新增刪改查的操作。

1、建立鏈接和Schema、Model

var mongoose = require(‘mongoose’);
/*開始獲取數據庫連接,此處部分為固定寫法,
 *其中myinfo是要操作數據庫的名稱*/
var con = mongoose.connect(‘mongodb://localhost/myinfo');
/*獲取mongoose全局的Schema對象,方便對多個表進行實例化*/
var sche = mongoose.Schema;
/*構建所需表的Schema,此處就構建了一個stu表的文件*/
var stuSchema = new sche({
 name:String,
 age:Number
});
/*構建表所需的模型 Model*/
var stuModel = con.model(’Stu’,stuSchema); 

 

2、新增

方式一:

/* 新增,新增操作需要構建一個表單行實例*/
var stuEntity = new stuModel({name:’hf’,age:2});
stuEntity.save(function(err){…});

方式二:

/* 新增,通過Model新增*/
var json = {name:’hf’ , age:1};
stuModel.create(json , function(error){…})

 

2、修改

var param = {name:’hf’};
var update = {$set:{name:’sfa’,age:26}};
stuModel.update(param , update , function(error){...})

 

3、刪除

var param = {name:’hf’};
stuModel.remove(param , function(error){...})

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM