初学mongodb和mongoose

进入安装mongodb的文件夹下的bin文件夹,执行命令:mongo ,就可以使用mongodb了。

安装好mongoose后,在app.js中,首先引入mongoose这个模块:

var mongoose = require(‘mongoose‘);

//连接到对应的数据库;

//端口号默认链接27017;

//test是数据库的名称,mongodb不需要建立数据库,当你需要连接的数据库不存在时,会自动创建一个;

mongoose.connect(‘mongodb://localhost/test‘);

var con = mongoose.connection;
    con.on(‘error‘,function(){
        console.log(‘数据库连接失败‘);
    })

con.on(‘open‘,function(){

//数据库连接成功

//1.定义Schema

//Schema是一种以文件形式存储的数据库模型骨架,无法直接对数据库进行操作。可以说是数据属性模型或集合的模型骨架;

//基本属性类型有字符串、日期、数值、布尔、null、数组、内嵌文档、Mixed(混合类型)、ObjectId(对象id)等;

//声明字段类型有两种方法,一种是首字母大写的字段类型,一种是引号包含的小写字段类型,例如‘string’
        var Schema = new mongoose.Schema({
            name:{type:String},
            category:{type:String,default:‘person‘}
        })
        Schema.methods.say = function(){
            console.log("这是schema对象的methods属性")
        }

//2.创建model,模型Model是根据Schema编译出的构造器,或者称为类 ,通过Model可以实例化出文档对象document文档,document的创建和检索都需要通过模型Model来处理

//集合名称如果最后不是数值的话,会设置为模型名称的小写复数形式,例如“Worid1”设置为“world1”,“World”设置为“worlds”;

//各种实例:http://mongoosejs.com/docs/schematypes.html  
        var Model = mongoose.model(‘World1‘,Schema);

//通过schema把数据库中的document映射成程序的一个对象,这个对象有save、update等一系列方法和title、author等一系列属性;

//document文档就是model创建的实体,model和document文档都能影响数据库操作,但model更有操作性;
       var dog = new Model({
            name:‘yuanbao‘,
            category:‘dog‘
        })
        var cat = new Model({
            name:‘daye‘,
            category:‘cat‘
        })
     
        dog.save(function(err,doc){
//          if(err) return console.log(err);
//          Model.find({name:‘yuanbao‘},(err,data)=>{
//              console.log(data);
//          });
        });
        cat.save();

});

以下链接中包括各种方法属性,谢谢分享。

参考链接:

https://www.cnblogs.com/web-fengmin/p/6435681.html

https://cnodejs.org/topic/595d9ad5a4de5625080fe118

https://www.cnblogs.com/xiaohuochai/p/7215067.html?utm_source=itdadao&utm_medium=referral

深入浅出mongoose:https://www.villainhr.com/page/2016/05/11/%E6%B7%B1%E5%85%A5%E6%B5%85%E5%87%BAmongoose#%E6%B7%B1%E5%85%A5%E6%B5%85%E5%87%BAmongoose

原文地址:https://www.cnblogs.com/binga/p/8656739.html

时间: 2024-11-09 00:41:05

初学mongodb和mongoose的相关文章

前端知识点回顾——mongodb和mongoose模块

mongodb和mongoose模块 数据库 数据库有关系型数据库(MySQL)和非关系型数据库(mongodb),两者的语法和数据存储形式不一样. mySQL 关系型数据库 类似于表格的形式,每一条数据都是以id为标识 table thead name sex age id tbody May female 18 1 Simple male 25 2 mongodb 非关系型数据库 集合,相当于表的概念,Bson,一条数据代表一个文档(数据的基本单位) { id : name : May ag

【重学Node.js 第3篇】mongodb以及mongoose的使用

mongodb以及mongoose的使用 本篇为这个系列的第三篇,想看更多可以直接去github的项目:https://github.com/hellozhangran/happy-egg-server 更多介绍可以看:https://www.cnblogs.com/zhangran/p/11963616.html mongodb mongodb是典型的非关系型数据库,关于它的背景介绍和优势劣势这里就不赘述,我们直接讲实操或者说最有可能用到的部分. mongodb常用指令 mongod --co

mongoDB (mongoose、增删改查、聚合、索引、连接、备份与恢复、监控等等)

MongoDB - 简介 官网:https://www.mongodb.com/ MongoDB 是一个基于分布式文件存储的数据库,由 C++ 语言编写,旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. MongoDB - 安装及运行 下载 07/05/2017 Current Stable Release (3.4.6) https://www.mongodb.com/dow

Node.js开发入门——MongoDB与Mongoose

为了保存网站的用户数据和业务数据,通常需要一个数据库.MongoDB和Node.js特别般配,因为MongoDB是基于文档的非关系型数据库,文档是按BSON(JSON的轻量化二进制格式)存储的,增删改查等管理数据库的命令和JavaScript语法很像.如果你在Node.js里访问MongoDB的数据,会有我们是一家人的感觉,特别亲切. 我也准备使用MongoDB来作为我的数据库. MongoDB使用集合(collection)和文档(document)来描述和存储数据,collection就相当

Nodejs之MEAN栈开发(三)---- 使用MongoDB和Mongoose创建数据模型及API

继续开扒我们的MEAN栈开发之路,前面两节我们学习了Express.Jade引擎并创建了几个静态页面,最后通过Heroku部署了应用. Nodejs之MEAN栈开发(一)---- 路由与控制器 Nodejs之MEAN栈开发(二)----视图与模型 这一节将重点介绍MongoDB以及它的ODM(Object-Document Modeler)Mongoose.MongoDB是一种分布式文档存储型数据库,和平时使用的关系型数据库不同,它存储的是BSON格式(json的二进制),特点是高性能.易部署,

mongodb用mongoose取到的对象不能增加属性

先定义了一个article的schema var mongoose = require('mongoose'); var Schema = mongoose.Schema; exports.schema = new Schema({ title: String,//标题 description: String,//描述 content: String,//内容 status:{type: Number, defalut: 0}, //未发布:0 ,发布:1 create_at: {type: D

mongodb用mongoose得到的对象不能增加属性解决

一,先定义了一个goods(商品)的models var mongoose = require('mongoose'); var Schema = mongoose.Schema; var productSchema = new Schema({ "productId":String, "producName": String, "salePrice":Number, "productImage":String }); mod

[转] mongoDB与mongoose

mongoDB简介 mongoDB与一些关系型数据库相比,它更显得轻巧.灵活,非常适合在数据规模很大.事务性不强的场合下使用.同时它也是一个对象数据库,没有表.行等概念,也没有固定的模式和结构,所有的数据以文档的形式存储. ·由c++语言编写,是一个分布式文件存储的开源NoSQL数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能. · mongoDB旨在为web应用提供可扩展的高性能数据存储解决方案 · mongoDB将数据存储为一个文档,数据结构由键值对组成.mongoDB文档类

mongodb用mongoose查库的对象,不能增加属性

node + koa2 + mongodb 写了一个给前端的接口 如果不是写这个接口,这辈子都发现不了mongodb里这个大坑 mongoose 是个ODM(Object Document Mapper),mongodb是nosql数据库,文档存储 mysql,sqlserver,oracle都是关系型数据库 所以mongodb无法在取到对象增加属性,必须在追加时候重新用一个对象,或者在schema中添加这个对象的key model.js // 这里用来建数据库表结构相关的 const mong