Difference between revisions of "MongoDB InsertData"

From mi-linux
Jump to navigationJump to search
Line 82: Line 82:
  
 
More than one record can be added at a time. The following examples will create a collection called ''emp'' representing the emp table data.
 
More than one record can be added at a time. The following examples will create a collection called ''emp'' representing the emp table data.
 +
 +
=== Department 10 Employees ===
  
 
  db.emp.insert( [
 
  db.emp.insert( [
 
  {
 
  {
empno: 7876,
+
        empno: 7782,
ename: "ADAMS",
+
        ename: 'CLARK',
job: "CLERK",
+
        job: 'MANAGER',
mgr: 7788,
+
        mgr: 7839,
hiredate: "19-NOV-2015",
+
        hiredate: new Date('1989-06-09'),
sal: 1100,
+
        sal: 2450,
deptno: 20
+
deptno: 10
},
+
    },
{
+
    {
empno: 7499,
+
        empno:7839,
ename: "ALLEN",
+
        ename: 'KING',
job: "SALESMAN",
+
        job: 'PRESIDENT',
mgr: 7698,
+
        hiredate: new Date('1980-11-17'),
hiredate: "20-FEB-1995",
+
        sal: 5000
sal: 1600,
+
      },
comm: 300,
+
      {
deptno: 30
+
        empno: 7934,
},
+
        ename: 'MILLER',
{
+
        job: 'CLERK',
empno: 7698,
+
        mgr: 7782,
ename: "BLAKE",
+
        hiredate: new Date('1985-01-23'),
job: "MANAGER",
+
        sal: 1300
mgr: 7839,
+
      }
hiredate: "01-MAY-1981",
+
    ]
sal: 2850,
+
  )
deptno: 30
 
},
 
{
 
empno: 7782,
 
ename: "CLARK",
 
job: "MANAGER",
 
mgr: 7839,
 
hiredate: "09-JUN-1989",
 
sal: 2450,
 
deptno: 10
 
},
 
{
 
empno: 7902,
 
ename: "FORD",
 
job: "ANALYST",
 
mgr: 7566,
 
hiredate: "03-DEC-1991",
 
sal: 3000,
 
deptno: 20
 
}
 
])
 
  
 
== Next Step ==
 
== Next Step ==
  
 
[[MongoDB_QueryData|Querying]] the collection
 
[[MongoDB_QueryData|Querying]] the collection

Revision as of 12:11, 11 November 2017

Main Page >> MongoDB >>MongoDB Workbook >> Insert Data

Inserting data

The format for the INSERT command is:

 db.collectionName.insert( 
  {
    key_1: 'value1',
    key_n: valueN
  }
 )

Note:

  • character and date values must be enclosed in matching single (') or double quotes (").
  • numeric values do not need quotes.
  • key/value pairs are comma-separated (no comma needed after the last pair)
  • each record is enclosed in curly brackets: {}

Department 10

The following examples will create a dept collection that will represent the DEPT table seen in the Oracle Sample Data. We will also include an object id (_id) for each record.

Add department 10:

db.dept.insert(
{
   _id: 10,
   deptno: 10,
   dname:  "ACCOUNTING",
   loc:    "NEW YORK"
})

Assuming you have no error messages, the system should respond with:

 WriteResult({ "nInserted" : 1 })

Department 20

Next add department 20:

db.dept.insert(
{
   _id: 20,
   deptno: 20,
   dname:  "RESEARCH",
   loc:    "DALLAS"

})

Department 40

Next department 40:

db.dept.insert(
{
   _id: 40,
   deptno: 40,
   dname:  "OPERATIONS",
   loc:    "BOSTON"

})

Things to note

If you are getting errors, check carefully that:

  • every opening bracket has an appropriate closing bracket:
    • the insert statement uses round brackets: ()
    • a collection uses curly brackets: {}
  • each key:value pair are separated by commas, except for the last item
  • strings are enclosed in single or double quotes, e.g., 'myString', or "myString"

Exercise 2.1

  • Compare how you added the above data and how it differs from INSERT records in a relational database
  • Try and add Department 30


Employee data

More than one record can be added at a time. The following examples will create a collection called emp representing the emp table data.

Department 10 Employees

db.emp.insert( [
{
       empno: 7782,
       ename: 'CLARK',	
       job: 'MANAGER',
       mgr: 7839, 	
       hiredate: new Date('1989-06-09'),
       sal: 2450,

deptno: 10

    },
    {
       empno:7839,
       ename: 'KING',
       job: 'PRESIDENT',
       hiredate: new Date('1980-11-17'),
       sal: 5000
     },
     {
       empno: 7934,
       ename: 'MILLER',
       job: 'CLERK',
       mgr: 7782,
       hiredate: new Date('1985-01-23'),
       sal: 1300
     }
   ]
 )

Next Step

Querying the collection