Skip to content

MongoDB Insert

Rafael J. Rodriguez edited this page Jan 6, 2017 · 2 revisions

Author

@Rafase282

Created by Rafase282

Github | FreeCodeCamp | CodePen | LinkedIn | Medium Website | E-Mail

MongoDB Insert

Connect to MongoDB on port 27017. You should connect to the database named learnyoumongo and insert a document into the docs collection.

The document should be a json document with the following properties:

  • firstName
  • lastName

firstName will be passed as the first argument to the lesson.

lastName will be passed as the second argument to the lesson.

Use console.log to print out the object used to create the document.

Make sure you use JSON.stringify convert it to JSON.

HINTS

Remember, one can access the arguments passed by using process.argv.

In order to use the mongo package, one must first require it like:

var MongoClient = require('mongodb').MongoClient

To connect, use the connect() function of MongoClient.

Ex.

MongoClient.connect(url, function(err, db) {
  if (err) throw err

})

If you get a Connection Refused error, make sure that mongod is still running.

After you have successfully connected, you will need to specify a collection. That can be done by calling the collection() function on the db returned in the callback to connect.

Say you wanted to specify a collection named users:

var collection = db.collection('users')

To insert a document, one would need to call insert() on the collection, like this:

// inserting document
// { a : 2 }
collection.insert({
  a: 2
}, function(err, data) {
  // handle error

  // other operations
})

If your program does not finish executing, you may have forgotten to close the db. That can be done by calling db.close() after you have finished.

Resource

My Solution

var url = 'mongodb://localhost:27017/learnyoumongo'
var MongoClient = require('mongodb').MongoClient
var doc = {
  firstName: process.argv[2],
  lastName: process.argv[3]
}
MongoClient.connect(url, function(err, db) {
  if (err) throw err
  var collection = db.collection('docs')
  // You need the information to be inserted and a function that also handles errors
  collection.insert(doc, function(err, data) {
    // handle error
    if (err) throw err

    // You print the inserted document and not "data"
    console.log(JSON.stringify(doc))
    db.close()
  })
})

Official Solution:

var mongo = require('mongodb').MongoClient

var firstName = process.argv[2]
var lastName = process.argv[3]
var doc = {
  firstName: firstName,
  lastName: lastName
}

var url = 'mongodb://localhost:27017/learnyoumongo'
mongo.connect(url, function(err, db) {
  if (err) throw err
  var collection = db.collection('docs')
  collection.insert(doc, function(err, data) {
    if (err) throw err
    console.log(JSON.stringify(doc))
    db.close()
  })
})

Getting Started

  1. Welcome!
  2. Contact
  3. Get Started with Free Code Camp

Front End Development Certification

  1. HTML5 and CSS
  2. Responsive Design with Bootstrap
  3. Gear up for Success
  4. jQuery
  5. Basic JavaScript
  6. Object Oriented and Functional Programming
  7. Basic Algorithm Scripting
  8. Basic Front End Development Projects
  9. Intermediate Algorithm Scripting
  10. JSON APIs and Ajax
  11. Intermediate Front End Development Projects
  12. Claim Your Front End Development Certificate

Data Visualization Certification

  1. SASS
  2. React
  3. React Projects
  4. D3
  5. Data Visualization Projects
  6. Claim Your Data Visualization Certificate

Back End Development Certification

  1. Upper Intermediate Algorithm Scripting
  2. Automated Testing and Debugging
  3. Advanced Algorithm Scripting
  4. AngularJS (Legacy Material)
  5. Git
  6. Node.js and Express.js
  7. MongoDB
  8. API Projects
  9. Dynamic Web Applications
  10. Claim Your Back End Development Certificate

Full Stack Development Certification

  1. Greefield Nonprofit Project 1
  2. Greefield Nonprofit Project 2
  3. Legacy Nonprofit Project 1
  4. Legacy Nonprofit Project 2
  5. Claim your Full Stack Development Certification

Coding Interview Preparation

  1. Whiteboard Coding Interview Training
  2. Critical Thinking Interview Training
  3. Mock Interview 1
  4. Mock Interview 2
  5. Mock Interview 3
Clone this wiki locally