用mongoose实现mongodb增删改查
- //用户
- var mongoose = require("mongoose"),
- setting = require("./setting");
- //配置连接数据库方法
- var connect = function(){
- //mongoose.connect('mongodb://localhost/test');
- mongoose.connect("mongodb://" + setting.host +"/"+ setting.db);
- // db = mongoose.createConnection("localhost","test");
- //db.on("error",console.error.bind(console,'连接错误:'))
- }
- //连接放在外面就可以多次操作,不然只能操作一次
- connect();
- //关闭数据库连接
- //mongoose.connection.close()
- // var Schema = mongoose.Schema;
- // var userSchema = new Schema({});
- //这种写法有点类似 object = Object();返回的也是对象
- //usersSchema = mongoose.Schema;
- var usersSchema = new mongoose.Schema({
- name: String,
- username:String,
- pwd:String,
- weibo:String,
- email:String
- });
- var usersModel = mongoose.model('User', usersSchema);
- function User(user){
- this.name = user.name,
- this.username = user.username,
- this.pwd = user.pwd,
- this.weibo = user.weibo,
- this.email = user.email
- };
- module.exports = User;
- //储存用户数据
- User.prototype.save = function(callback){
- //要存入的用户文档
- var user = {
- name:this.name,
- username:this.username,
- pwd:this.pwd,
- weibo:this.weibo,
- email:this.email
- };
- //连接数据库
- //connect();
- //var newUser = usersModel(user);
- var newUser = new usersModel(user);
- newUser.save(function(err, user){
- if(err){
- return callback && callback(err);
- }
- callback && callback(null,user);
- })
- };
- //获取1条用户数据
- User.get = function(query,callback){
- //连接数据库
- // connect();
- usersModel.findOne(query, function (err, user) {
- if (err) {
- return callback && callback(err);
- }
- callback && callback(null,user);//成功,返回数据
- });
- };
- //获取所有的用户数据
- User.getAll = function(callback){
- //连接数据库
- // connect();
- usersModel.find(function (err, user) {
- if (err) {
- return callback && callback(err);
- }
- callback && callback(null,user);//成功,返回数据
- });
- };
- //获取id数据
- User.findById = function(_id,callback){
- //连接数据库
- // connect();
- usersModel.findById(_id,function (err, user) {
- if (err) {
- return callback && callback(err);
- }
- callback && callback(null,user);//成功,返回数据
- });
- };
- //删除用户数据 只有状态码{result:{ok:1,n:0},connection:{……},options{……}}
- User.remove = function(query,callback){
- //连接数据库
- // connect();
- usersModel.remove(query, function (err, user) {
- if (err) {
- return callback && callback(err);
- }
- callback && callback(null,user);//成功,返回数据
- });
- };
- //获取用户数据 只有状态码{ok:1,nModified:1,n:1}
- User.update = function(query,opt,callback){
- //连接数据库
- // connect();
- usersModel.update(query,opt,function (err, user) {
- if (err) {
- return callback && callback(err);
- }
- callback && callback(null,user);//成功,返回数据
- });
- };
- var cat = {
- name: "yoyo",
- username:"cwj",
- pwd:"",
- weibo:"pingfan",
- email:"pingfan1991110@sina.cn"
- };
- var Cat = new User(cat);
- //保存
- //Cat.save(function(err,user){console.log(user);})
- //User.findById("557683e7297334ac29068af6",function(err,user){console.log(user);});
- //查询
- //User.get({name: "yoyo22"},function(err,user){console.log(user)});
- //User.getAll(function(err,user){console.log(user)})
- //mongoose.connection.close();
- //删除一条
- //User.remove({name: "yoyo11"},function(err,msg){console.log(msg)});
- //删除所有
- //User.remove(null,function(err,msg){console.log(msg)});
- //User.remove({},function(err,msg){console.log(msg)});
- //更新一条数据
- //User.update({name: "yoyo"},{username:"cwj",pwd:"234556",weibo:"kskk"},function(err,msg){console.log(msg)});
用mongoose实现mongodb增删改查的更多相关文章
- 数据库——MongoDB增删改查
MongoDB增删改查操作 本文包含对数据库.集合以及文档的基本增删改查操作 数据库操作 #1.增 use config #如果数据库不存在,则创建并切换到该数据库,存在则直接切换到指定数据库. #2 ...
- MongoDB - 增删改查及聚合操作
目录 MongoDB - 增删改查及聚合操作 一. 数据库操作(database) 1. 创建及查看库 2. 删除库 二. 集合collectionc=操作(相当于SQL数据库中的表table) 1. ...
- [MongoDB]增删改查
摘要 上篇文章学习了mongodb在windows上的安装,以及如何开启mongodb,最后列举了简单的增删改查操作.本篇将继续深入学习一下增删改查. 相关文章 [MongoDB]入门操作 CRUD ...
- springMVC操作mongoDB增删改查
下面是mongoDb简单的增删改查(新闻类) 附:query.addCriteria(Criteria.where("modelId").ne("").ne(n ...
- 第二部分 Mongodb增删改查
学习内容:1.mongodb增加操作2.mongodb删除操作3.mongodb查询操作增删改查的高级应用Capped Collection(固定集合)GridFS 大文件上传或下载 1: inser ...
- MongoDB(六)java操作mongodb增删改查
java操作mysql数据库的代码我们已经了如指掌了.增删改查,java对mongodb数据库也是类似的操作,先是数据库连接.再是进行操作. 首先我们进入进入admin数据库.然后建立自己的数据库te ...
- MongoDB增删改查表文档
MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写,是一个基于分布式文件存储的开源数据库系统.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关 ...
- mongodb增删改查操作
Note:mongodb存储的是文档,且文档是json格式的对象,所以增删改查都必须是json格式对象. 注:mongodb常用库和表操作,但mongodb在插入数据时,不需要先创建表. show d ...
- mongodb增删改查常用命令总结
前言 去年我还折腾过mongodb,后来用不到也就没碰了,这就导致了我忘的一干二净,不得不感叹,编程这东西只要不用,就会忘没了.现在我想重拾mongodb,来总结一下常用命令,主要就是增删改查. 另外 ...
随机推荐
- Window 10 :如何彻底关闭:Windows Defender Service(2015-12-20日更新)
Window 10 :如何彻底关闭:Windows Defender Service? 网上流传的什么组策略gpeidt.msc方法,什么安装其他的杀软之类的方法都很麻烦,且有弊病! 其实很简单: 利 ...
- Android:AS与Unity3D之间打包的各种坑及解决方案
作者:DrkCore (http://blog.csdn.net/DrkCore) 原文链接:(http://blog.csdn.net/drkcore/article/details/5207937 ...
- Android Studio配置设置
文章来源:http://www.cnblogs.com/smyhvae/p/4390905.html
- Jenkins入门知识
1 修改jenkins的根目录,默认地在C:\Documents and Settings\AAA\.jenkins . .jenkins ├─jobs│ └─JavaHelloWorld│ ...
- Android开发学习笔记-自定义TextView属性模版
如果项目中有很多个控件使用的是同一种样式,则为了方便,可以将样式设置到系统中去,这样使用的时候会方便很多. 下面是自定义样式模版的方法. 1.在style.xml文件中添加自己要设置的样式内容 < ...
- [转]油猴Tampermonkey-让百度云下载飞起来
1. 简介 Tampermonkey,油猴脚本是一款免费的浏览器扩展程序. 我们这里用于Chrome浏览器,目的是为了让百度云里面的文件以满速下载,VIP还得出钱呢. 2. 安装 安装Lantern蓝 ...
- pycharm pro版本激活
这几天行激活pycharm pro版会遇到问题,license server的网址都不可用了.包括各个网站的百度云的破解资源链接都被和谐了,发现最近jetbrains对盗版管得严. 首次安装在注册界面 ...
- c#直接调用ssis包实现Sql Server的数据导入功能
调用ssis包实现Sql Server的数据导入功能网上已经有很多人讨论过,自己参考后也动手实现了一下,上一次笔者的项目中还用了一下这个功能.思前想后,决定还是贴一下增强记忆,高手请54. 1.直接调 ...
- 关于C中函数传参的一点理解
一般来说c传值分为传值与传指针,Java里没有指针,因此只有传值,但是Java里传值分为简单变量传值和引用型变量传值,从本质上来说这两者没啥区别. 下面主要说的是传参时对原变量的影响: 最初练习创建单 ...
- 【Cesium】坐标理解(转)
https://blog.csdn.net/qq_34149805/article/details/78393540 1. 经纬度转换为世界坐标 第一种方式:直接转换: Cesium.Cartesia ...