资讯专栏INFORMATION COLUMN

MongoDB学习笔记

April / 606人阅读

背景

学习MongoDB,并做笔记整理,以便于用到时查看。

MogoDB

NoSQL Database(JS)

使用方便,想存就存,相取就取

是MEAN中的M(数据)

安装

https://www.mongodb.com/downl... 选择相应系统安装包

安装mongoose

创建一个文件夹,并npm init --yes,创建package.js

npm install mongoose --save //安装mongoose模块

创建test文件夹,并在其中创建connection.js文件

connection.js(连接数据库)

const mongoose=require("mongoose")//引入mogonese

mongoose.connect("mongodb://localhost/test")//连接MongoDB

mongoose.connection.once("open",function () { console.log("数据库连接成功")
}).on("error",function (error) { console.log("连接失败:",error);
});//测试数据库是否连接成功

在项目根目录中创建models文件夹,并在其中创建mariochar.js

mariochar.js

const mongoose=require("mongoose");//引入mongoose

const Schema=mongoose.Schema;//获取规范类

const MarioCharSchema=new Schema({ name:String, weight:Number
});//规范数据格式

const MarioChar=mongoose.model("Mario",MarioCharSchema);//创建数据模型

Mocha(测试mongoose的框架)

在test目录下创建demo_test.js文件

npm install mocha --save //安装mocha模块

const mocha=require("mocha");//导入模块

const assert=require("assert");//引入断言

describe("demo test",function () { //创建需要测试的任务
it("测试两个数的值是否相等",function () { //使用断言 assert(2+3===5); })
});//测试时,对当前测试的一个描述

存储数据

将demo_test.js重命名为saving_test.js

const MarioChar=require("../models/mariochar");

const mocha=require("mocha");

const assert=require("assert");

describe("存储数据",function () { //创建需要测试的任务 it("saving
data",function () { //准备需要存储的数据 var char=new MarioChar({ name:"Mario"
}) //存储数据 char.save().then(function (result) {
console.log(result.name); assert(result.isNew===false); }) }) });

robomongo(mogodb可视化工具)

安装 https://robomongo.org/

查询数据

在test目录下创建finding_test文件

const MarioChar=require("../models/mariochar");

const mocha=require("mocha");

const assert=require("assert");

describe("查找数据",function () { //创建需要测试的任务 it("finding
data",function (done) {
MarioChar.findOne({name:"Mario"}).then(function (result) {
console.log(result.name); done(); }) }) });

删除数据
it("deleating data from db", function () { 
MarioChar.findOneAndRemove({name:"Mario"})
.then(function (result) { assert(result===null); })
 });
更新数据
it("更新语句中的操作语句", function (done) {
        MarioChar.findOneAndUpdate({name:"Mario"},{$inc:{weight:1}}).then(function (result) {
            console.log(result.weight);
            done();
        })
    });

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/19252.html

相关文章

  • MongoDB学习笔记 — mac下MongoDB的安装与使用

    摘要:在上安装有两种方法下载安装包安装使用安装方式下载安装包安装注意在中不支持像方式,只好用方式来下载。再打开一个终端窗口,执行以下命令停止在开启服务的控制台,即可停止或者直接关闭开启服务的控制台。 在Mac上安装MongoDB有两种方法: 下载安装包安装 使用 brew 安装 1. curl方式下载安装包安装 注意:在mac中不支持像wget方式,只好用curl方式来下载。 可以直接到...

    guqiu 评论0 收藏0
  • MongoDB学习笔记 — mac下MongoDB的安装与使用

    摘要:在上安装有两种方法下载安装包安装使用安装方式下载安装包安装注意在中不支持像方式,只好用方式来下载。再打开一个终端窗口,执行以下命令停止在开启服务的控制台,即可停止或者直接关闭开启服务的控制台。 在Mac上安装MongoDB有两种方法: 下载安装包安装 使用 brew 安装 1. curl方式下载安装包安装 注意:在mac中不支持像wget方式,只好用curl方式来下载。 可以直接到...

    luck 评论0 收藏0
  • mongo学习笔记

    摘要:学习笔记一安装测试配置下载安装从官网下载对应的压缩包解压即可。 mongo学习笔记 一 安装测试配置 1 下载安装 从mongodb官网下载对应的压缩包,解压即可。 copy命令到/usr/local/bin目录 (cp mongod /usr/local/bin;cp mongo /usr/local/bin) 2 创建配置文件 参考官方文档https:/...

    zhangyucha0 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<