使用node操作mongodb
let mongodb = require('mongodb');
let MongodbClient = mongodb.MongoClient;
MongodbClient.connect('mongodb://127.0.0.1:27017/project', function (err, db) {
if (err) {
console.log(err);
} else {
let collection = db.createCollection('myuser');
let mycollection = db.collection('myuser');
mycollection.insert([{
name: 'xiaobai',
sex: '男',
age: ,
address: '北京',
grades:
}, {
name: 'xiaobai1',
sex: '女',
age: ,
address: '英国',
grades:
}, {
name: 'xiaobai2',
sex: '女',
age: ,
address: '北京',
grades:
}, {
name: 'xiaobai3',
sex: '男',
age: ,
address: '北京',
grades:
}, {
name: 'xiaobai4',
sex: '男',
age: ,
address: '北京',
grades:
}, {
name: 'xiaobai5',
sex: '男',
age: ,
address: '天津',
grades:
}], function (err, result) {
if (!err) console.log('ok');
// 插入多条使用insertMany([])
})
mycollection.find().toArray(function (err, data) {
if (!err) console.log('ok');
});
mycollection.distinct('name', function (err, data) {
if (!err) console.log('ok');
});
mycollection.find({
'age': {
$gt:
}
}, {
name:
}).toArray(function (err, data) {
if (!err) console.log('ok');
// 查询年龄大于12学生姓名
});
mycollection.find({
'age': {
$gt: ,
$lt:
}
}).toArray(function (err, data) {
if (!err) console.log('ok');
// 查询年龄在18--25之间的学生所有信息
// console.log(data)
});
mycollection.find({
$or: [{
'age': {
$gt:
}
}, {
sex: '女'
}]
}).toArray(function (err, data) {
if (!err) console.log('ok');
// 查询女生或年龄大于30的学生信息
// console.log(data)
});
mycollection.find({
'address': /北京/
}).toArray(function (err, data) {
if (!err) console.log('ok');
// 查询学生地址中包含“北京”的学生信息
});
mycollection.find({
'name': /^xiaobai/
}).toArray(function (err, data) {
if (!err) console.log('ok');
// 查询姓xiaobai的 学生信息
// console.log(data)
});
mycollection.find().skip().limit().toArray(function (err, data) {
if (!err) console.log('ok');
// 查询第3--4条数据
// console.log(data)
});
mycollection.find().limit().toArray(function (err, data) {
if (!err) console.log('ok');
// 查询前三条数据
// console.log(data)
});
mycollection.find({}, {
name: ,
grades:
}).sort({
grades: -
}).toArray(function (err, data) {
if (!err) console.log('ok');
//按照学生的成绩降序查询学生姓名和成绩
});
// mycollection.remove({age:{$gte:18}},function(err,result){
// if(!err)console.log('ok');
// // console.log(result)
// })
// mycollection.remove({},function(err,result){
// if(!err)console.log('ok');
// // console.log(result)
// })
mycollection.find({
age: {
$lte:
},
sex: '男'
}).toArray(function (err, data) {
if (!err) console.log('ok');
// console.log(data);
// 查询年龄小于等于20的男生的信息
});
mycollection.updateMany({
sex: '女'
}, {
$set: {
grades:
}
}, function (err, data) {
if (err) console.log(err);
// console.log(data.message.Response.data.toString());
// console.log(data)
// db.close(); //关闭数据库
});
mycollection.drop({}, function (err, message) {
console.log(err, message)
// 删除表
return console.log(arguments)
});
}
})
使用node操作mongodb的更多相关文章
- Node操作MongoDB并与express结合实现图书管理系统
Node操作MongoDB数据库 原文链接:http://www.xingxin.me/ Web应用离不开数据库的操作,我们将陆续了解Node操作MongoDB与MySQL这是两个具有代表性的数据库, ...
- Mongoose 使用Node操作MongoDB
Mongoose好处 可以为文档创建一个模式结构(Schema) 可以对模型中的对象/文档进行验证 数据可以通过类型转换转换为对象模型 可以使用中间件来应用业务逻辑挂钩 比Node原生的MongoDB ...
- node操作mongoDB数据库的最基本例子
连接数据库 var mongo=require("mongodb"); var host="localhost"; var port=mongo.Connect ...
- node操作mongodb
var mongodb = require('mongodb'); var server = new mongodb.Server('localhost', 27017, {auto_reconnec ...
- node操作MongoDB数据库之插入
在上一篇中我们介绍了MongoDB的安装与配置,接下来的我们来看看在node中怎样操作MongoDB数据库. 在操作数据库之前,首先应该像关系型数据库一样建个数据库把... 启动数据库 利用命令提示符 ...
- mongoose - 让node.js高效操作mongodb
Mongoose库简而言之就是在node环境中操作MongoDB数据库的一种便捷的封装,一种对象模型工具,类似ORM,Mongoose将数据库中的数据转换为JavaScript对象以供你在应用中使用. ...
- node.js高效操作mongodb
node.js高效操作mongodb Mongoose库简而言之就是在node环境中操作MongoDB数据库的一种便捷的封装,一种对象模型工具,类似ORM,Mongoose将数据库中的数据转换为Jav ...
- Node使用Mongoose操作MongoDB数据库——增删改查的实现
当初刚出社会时就规划了下自己的职业生涯:先成为一名优秀的前端工程师,再成为一名全栈工程师(精通前端开发.后台开发和客户端开发),最后成为一名优秀的系统架构师.转眼间已经工作快三年,是时候迈出关键性的一 ...
- MONGOOSE – 让NODE.JS高效操作MONGODB(转载)
Mongoose库简而言之就是在node环境中操作MongoDB数据库的一种便捷的封装,一种对象模型工具,类似ORM,Mongoose将数据库中的数据转换为JavaScript对象以供你在应用中使用. ...
随机推荐
- 重新安装liteide后无法关联.go文件的解决办法(及更改liteide配色方案)
现象:双击.go文件,从打开方式中选择新安装的liteide.exe无效. 解决办法: 打开regedit 找到HKCU\Software\Classes\go_auto_file 发现下面有shel ...
- 小a的轰炸游戏 (差分)
我是看题解的! 这道题还是有很多细节,当然,是一道差分的好题! 题意:有2种飞机,一种是只炸上半菱形,一种是炸整个菱形.问所有区域内的所有格子的异或和. 思路:用前缀和思路: 这样遍历过去就完成了一次 ...
- Linux:Day9(下) 程序包管理
API:Application Programming Interface POSIX:Portable OS 程序源代码 --> 预处理 --> 编译 --> 汇编 --> ...
- (六) JavaScript 对象
- Generative Adversarial Nets[content]
0. Introduction 基于纳什平衡,零和游戏,最大最小策略等角度来作为GAN的引言 1. GAN GAN开山之作 图1.1 GAN的判别器和生成器的结构图及loss 2. Condition ...
- Java关键字(六)——super
在 Java关键字(五)——this 中我们说 this 关键字是表示当前对象的引用.而 Java 中的 super 关键字则是表示 父类对象的引用. 我们分析这句话“父类对象的引用”,那说明我们使用 ...
- 在windows下安装Redis
一.下载windows版本的Redis 由于官网上没有windows版的下载地址,所以需要下载windows版本的Redis有以下两个地址: 博主的csdn资源地址:http://download.c ...
- Jlink使用技巧之J-Scope虚拟示波器功能
J-Link简介 J-Link是SEGGER公司为支持仿真ARM内核芯片推出的JTAG仿真器.简单地说,是给一个JTAG协议转换盒.其连接到计算机用的是USB接口,而到目标板内部用的还是jtag协议. ...
- C# 相关面试试题简单的总结
最近一个搞NET开发的朋友离职了,想让我给他找点关于NET的相关面试题,准备抱一下佛脚,迎接新的挑战. 我赶紧找到以前检索的各种宝典,试题,今天梳理一下关于NET的基础知识点. 1.面向对象语言的三大 ...
- 在Bootstrap开发中解决Tab标签页切换图表显示问题
在做响应式页面的时候,往往需要考虑更多尺寸设备的界面兼容性,一般不能写死像素,以便能够使得界面元素能够根据设备的不同进行动态调整,但往往有时候还是碰到一些问题,如Tab标签第一页面正常显示,但是切换其 ...