NodeJS连接MongoDB和mongoose

Posted zhouying1208

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NodeJS连接MongoDB和mongoose相关的知识,希望对你有一定的参考价值。

1. 连接MongoDB(两种方法,我们常用第二种方法)

第一步:新建一个文件夹,然后在node中运行npm init,npm i mongodb@2 -D,安装好之后,文件夹下会出来package.json文件,然后会出来node_modules文件夹,注意!!!!在这里一定要在mongodb后面加上版本号@2,这样就会自动安装第二版的最新更新,不然会安装失败。

第二步:在package.json文件下添加"dev": "node index",然后新建一个index.js文件,在index.js中写入代码

方法一:

var mongodb=require(‘mongodb‘);//引用mongodb模块
var server=new mongodb.Server(‘localhost‘,27017,auto_reconnect:true);//端口号
var db=new mongodb.Db(‘zz1906‘,server,safe:true);

db.open((err,dbs)=>
//    dbs==zz1906
    if(err) throw err;
    dbs.collection(‘info‘,(err,coll)=>
//        coll==info
        if(err) throw err;
        
//        console.log(coll.find())
        coll.find().toArray((err,data)=>
            if(err) throw err;
            console.log(data)
            dbs.close()
        )
    )
)

方法二:

var mongodb=require(‘mongodb‘).MongoClient;
var db_str="mongodb://localhost:27017/zz1906";
mongodb.connect(db_str,(err,dbs)=>
    //dbs==zz1906
    if(err) throw err;
    dbs.collection(‘info‘,(err,coll)=>
        //coll==info
        
        // if(err) throw err;//打印出来会有很多代码冗余
        // console.log(coll.find())
        // dbs.close()
        
        
        if(err) throw err;
        coll.find().toArray((err,data)=>//查(减少了很多冗余代码)
            if(err) throw err;
            console.log(data);
            dbs.close()
        )
        coll.insert(title:‘战狼‘,()=>//
            console.log(‘success‘);
            dbs.close();
        )
        coll.remove(title:‘吴京‘,()=>//
            console.log(‘success‘);
            dbs.close();
            
        )
        coll.update(name:"zhangsan",$set:name:‘张三‘,()=>//
            console.log(‘success‘);
            dbs.close();
            
        )
        
        
    )
)

2. 连接mongooes

安装mongooes,在node中输入npm i mongoose --save-dev, index.js中输入代码

var mongoose=require(‘mongoose‘);
var db_str="mongodb://localhost:27017/zz1906";
mongoose.connect(db_str)
mongoose.connection.on(‘connected‘,()=>
    console.log(‘连接成功‘)
)
mongoose.connection.on(‘error‘,()=>
    console.log(‘error‘)
)
mongoose.connection.on(‘disconnected‘,()=>
    console.log(‘断开连接‘)
)

var schema=new mongoose.Schema(
    name:type:String,require:true,
    content:type:String,require:true
)

var Cat=new mongoose.model(‘info‘,schema)
// Cat.find(,(err,data)=>//查询
//     if(err) throw err;
//     console.log(data)
//     mongoose.disconnect()
// )
// Cat.create(name:‘小明‘,content:‘helloworld‘,()=>//增
//     console.log(‘success‘)
//     mongoose.disconnect()
// )
// Cat.update(name:‘小明‘,$set:content:‘hi‘,()=>//改
//     console.log(‘success‘)
//     mongoose.disconnect()
// )
// Cat.remove(name:‘小明‘,()=>//删
//     console.log(‘success‘);
//     mongoose.disconnect()
// )

3. 也可以运用软件robo3t来对数据库进行操作

以上是关于NodeJS连接MongoDB和mongoose的主要内容,如果未能解决你的问题,请参考以下文章

NodeJS连接MongoDB和mongoose

nodejs学习-4:nodejs连接mongodb和相关操作

nodejs学习-4:nodejs连接mongodb和相关操作

何时在 Nodejs 中关闭 MongoDB 数据库连接

NodeJS与mongoDB的连接错误

NodeJS 远程连接windows 上的MongoDB