node操作mongdb的常用函数示例

链接数据库

var mongoose = require('mongoose'); //引用数据库模块
mongoose.connect('mongodb://localhost:27018/yzblog'); //链接数据库
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
console.log('数据库已打开!');
})
 
/***************创建数据库模型********************/
 
var schema = new mongoose.Schema({ name: String }); //建表
var Page = mongoose.model('Page', schema); //创建模型
 
/***************增加数据记录********************/
 
//方法一
var p = new Page({ name: '张三' }); //给对象赋值
p.save(); //保存进数据库中 //方法二
Page.create({ name: '张三' }, function(err, small) {
if (err) return handleError(err);
//console.log(small);//被插入的数据
})
 
/***************删除数据记录********************/
 
//方法一
Page.remove({ name: 'fads' }).then(function(data) {
//console.log(data);
//返回result对象,n:删除记录数量,ok:表示删除成功,永远是1
}); //方法二
Page.remove({ name: '张三' }, function(err, small) {
if (err) return handleError(err);
//console.log(small); //被插入的数据
//返回result对象,n:删除记录数量,ok:表示删除成功,永远是1
});
 
/***************修改数据记录********************/
 
//方法一
Page.findById('59fc0088e6b8591414108570', function(err, Page) {
if (err) return handleError(err);
Page.name = '王五';
Page.save(function(err, Page) {
if (err) return handleError(err);
//console.log(Page); //返回被修改的记录
});
}); //方法二
Page.update({ _id: '59fc0088e6b8591414108570' }, { $set: { name: '王五被修改了' } }, function(err, Page) {
//console.log(Page); //返回被修改的条数及状态(返回内容相对简单)
}); //方法三
Page.findByIdAndUpdate('59fc06b7c36c81229cfdf940', { $set: { name: 'large' } }, { new: true }, function(err, Page) {
if (err) return handleError(err);
//console.log(Page); //返回被修改的记录(完整)
});
 
/***************查询数据记录********************/
 
//查询全部数据
Page.find().then(function(data) {
//console.log(data); //打印查询到的数据
}); //查询指定数据
Page.find({ name: '张三' }).then(function(data) {
//console.log(data); //打印查询到的数据
});
//查询三
Page.findOne({ name: '张三' }).then(function(data) {
console.log(data); //打印查询到的数据
});

node操作mongdb的常用函数示例的更多相关文章

  1. Python3 urllib.parse 常用函数示例

    Python3 urllib.parse 常用函数示例 http://blog.51cto.com/walkerqt/1766670  1.获取url参数. >>> from url ...

  2. php操作mongodb的常用函数

    连接mongodb: $mongoObj = new Mongo("127.0.0.1" , array( 'connect'=>true, 'persist'=>tr ...

  3. PHP操作MySQL的常用函数

    某些情况下(如html中),调用php的变量时,要给变量加{},若要使字符串变量加上引号,则还需要在{}外加引号 如: $sql="select * from admin where use ...

  4. DML数据操作语言之常用函数

    所谓函数,就是输入某一值,得到相应的输出结果的功能.相当于一个加工厂,给了原料,最终产出成品. 其中原料 就是参数(parameter). 产品 就是返回值. 函数大致可以分为以下五个种类: 算术函数 ...

  5. uchome 常用函数示例

    一.inserttable //添加数据 //前3个参数 $tablename插入的表名称 $insertsqlarr数据数组 $returnid是否返回插入ID function inserttab ...

  6. C#操作字符串之常用函数总结

    1:使用string.Join 泛型集合快速转换拼接字符串. 2:使用 string.Split 将字符串截断转换成字符数组. 3:使用 string.Substring,string.Remove ...

  7. mysql常用函数示例

    CREATE TABLE `orders` ( `OrderId` INT(10) NOT NULL AUTO_INCREMENT COMMENT '编号', `ProductName` VARCHA ...

  8. js操作url的常用函数

    1. //替换指定传入参数的值,paramName为参数,replaceWith为新值 function replaceParamVal(oUrl,paramName, replaceWith) { ...

  9. Python之OS(系统操作)模块常用函数

    mkdir(path[, mode=0777]) makedirs(name,mode=511) rmdir(path) removedirs(path) listdir(path) getcwd() ...

随机推荐

  1. 巨蟒django之权限6: 权限控制表设计&&登录权限

    1.权限控制表设计 内容 . 什么是权限? . 为什么要有权限? 不同用户拥有不同的功能 . 在web开发中,什么是权限? url 代表 权限 . 开发一个权限的组件,为什么要开发组件? . 表结构的 ...

  2. Django基础流程

    软件环境: Pycharm 2018.1 Python 3.6 Django 2.0.3 1.新建项目 直接使用Pycharm的菜单来创建项目,命名为mysite. mysite mysite __i ...

  3. linux /etc/security/limits.conf的相关说明

    暂时粘贴他人的地址,后续会整理后放出. 原文地址:http://blog.csdn.net/taijianyu/article/details/5976319

  4. 每个分片都是一个独立的Apache Lucene索引

    数据架构:索引+文档+文档类型+映射 [索引 文档 文档类型 映射] 索引index 对逻辑数据的逻辑存储:关系型数据库表.MongoDB集合.CouchDb数据库索引 index <---sh ...

  5. Python操作Redis(一)

    redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set ...

  6. Linux下环境变量配置错误 导致大部分命令不可以使用的解决办法

    直接解决方法:在命令行中输入:export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin 后 Enter

  7. Scrapy框架2

    一.进程.线程.协成 1.进程.线程.协成之间的关系          1.  线程是计算机中最小的工作单元.              2. 进程是提供资源供n个线程使用,即进程是最小的管理单元. ...

  8. C/C++ 关键字的使用方法详解

    cppreference.com -> C/C++ 关键字 -> 细节 C/C++ 关键字 asm 语法: asm( "instruction" ); asm允许你在你 ...

  9. 查看连接MYSQL数据库的IP信息

    要统计数据库的连接数,我们通常情况下是统计总数,细分到每个ip地址: 方法一: ) as ip , count(*) from information_schema.processlist group ...

  10. POJ - 2464 Brownie Points II 【树状数组 + 离散化】【好题】

    题目链接 http://poj.org/problem?id=2464 题意 在一个二维坐标系上 给出一些点 Stan 先画一条过一点的水平线 Odd 再画一条 过Stan那条水平线上的任一点的垂直线 ...