无法插入文件MongoDB数据库

时间:2018-01-03 14:01:57

标签: node.js mongodb

我无法使用Nodejs中的insert方法将数据插入MongoDB数据库。

var url = 'mongodb://localhost:27017/learnyoumongo';
var mongo = require('mongodb').MongoClient;
mongo.connect(url, function(err, db) {
  if (err) throw err;
  // db gives access to the database
  const myDb = db.db('learnyoumongo');
  var docs = myDb.collection('docs');
  var obj = {firstName: process.argv[2], lastName: process.argv[3]};
  docs.insert(obj, function(err, res){
    if(err) throw err;
    console.log('data inserted');
  })
  db.close();
}

没有输出,并且与数据库的连接成功,但没有发生数据插入。

3 个答案:

答案 0 :(得分:2)

试试这个适合你。

var url = 'mongodb://localhost:27017/learnyoumongo';
var mongo = require('mongodb').MongoClient;
mongo.connect(url, function(err, dbobj) {
  if (err) throw err;
  // db gives access to the database
 // const myDb = dbobj.db('learnyoumongo').collection('docs');
 // var docs = myDb.collection('docs');
  var obj = {firstName: process.argv[2], lastName: process.argv[3]};
  dbobj.db('learnyoumongo').collection('docs').insert(obj, function(err, res){
    if(err) throw err;
    console.log('data inserted');
    dbobj.close();
  })

})

答案 1 :(得分:0)

我弄清楚问题是什么。好像我忘了在最后添加一个括号:

var url = 'mongodb://localhost:27017/learnyoumongo';
var mongo = require('mongodb').MongoClient;
mongo.connect(url, function(err, db) {
  if (err) throw err;
  // db gives access to the database
  const myDb = db.db('learnyoumongo');
  var docs = myDb.collection('docs');
  var obj = {firstName: process.argv[2], lastName: process.argv[3]};
  docs.insert(obj, function(err, res){
    if(err) throw err;
    console.log('data inserted');
  })
  db.close();
})

答案 2 :(得分:0)

您可以使用以下代码使用nodejs将数据插入MongoDB。

var mongo = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/learnyoumongo";

mongo.connect(url, function(err, db) {
if (err) throw err;
//access to the database
var myobj = { firstname: "Jhon", lastname: "Mackey" };
db.collection("docs").insertOne(myobj, function(err, res) {
if (err) throw err;
console.log("Data inserted");
db.close();
 });
});