MongoDB - Sisipkan Dokumen
Pada bab ini, kita akan belajar bagaimana memasukkan dokumen ke dalam koleksi MongoDB.
Metode insert ()
Untuk memasukkan data ke dalam koleksi MongoDB, Anda perlu menggunakan MongoDB's insert() atau save() metode.
Sintaksis
Sintaks dasar insert() perintahnya adalah sebagai berikut -
>db.COLLECTION_NAME.insert(document)
Contoh
> db.users.insert({
... _id : ObjectId("507f191e810c19729de860ea"),
... title: "MongoDB Overview",
... description: "MongoDB is no sql database",
... by: "tutorials point",
... url: "http://www.tutorialspoint.com",
... tags: ['mongodb', 'database', 'NoSQL'],
... likes: 100
... })
WriteResult({ "nInserted" : 1 })
>
Sini mycoladalah nama koleksi kami, seperti yang dibuat di bab sebelumnya. Jika koleksi tidak ada di database, maka MongoDB akan membuat koleksi ini dan kemudian memasukkan dokumen ke dalamnya.
Dalam dokumen yang disisipkan, jika kita tidak menentukan parameter _id, maka MongoDB menetapkan ObjectId unik untuk dokumen ini.
_id adalah 12 byte bilangan heksadesimal unik untuk setiap dokumen dalam koleksi. 12 byte dibagi sebagai berikut -
_id: ObjectId(4 bytes timestamp, 3 bytes machine id, 2 bytes process id, 3 bytes incrementer)
Anda juga bisa melewatkan larik dokumen ke dalam metode insert () seperti yang ditunjukkan di bawah ini :.
> db.createCollection("post")
> db.post.insert([
{
title: "MongoDB Overview",
description: "MongoDB is no SQL database",
by: "tutorials point",
url: "http://www.tutorialspoint.com",
tags: ["mongodb", "database", "NoSQL"],
likes: 100
},
{
title: "NoSQL Database",
description: "NoSQL database doesn't have tables",
by: "tutorials point",
url: "http://www.tutorialspoint.com",
tags: ["mongodb", "database", "NoSQL"],
likes: 20,
comments: [
{
user:"user1",
message: "My first comment",
dateCreated: new Date(2013,11,10,2,35),
like: 0
}
]
}
])
BulkWriteResult({
"writeErrors" : [ ],
"writeConcernErrors" : [ ],
"nInserted" : 2,
"nUpserted" : 0,
"nMatched" : 0,
"nModified" : 0,
"nRemoved" : 0,
"upserted" : [ ]
})
>
Untuk memasukkan dokumen yang bisa Anda gunakan db.post.save(document)juga. Jika Anda tidak menentukan_id di dokumen lalu save() metode akan bekerja sama seperti insert()metode. Jika Anda menentukan _id maka itu akan menggantikan seluruh data dokumen yang berisi _id seperti yang ditentukan dalam metode save ().
Metode insertOne ()
Jika Anda hanya perlu memasukkan satu dokumen ke dalam koleksi, Anda dapat menggunakan metode ini.
Sintaksis
Sintaks dasar dari perintah insert () adalah sebagai berikut -
>db.COLLECTION_NAME.insertOne(document)
Contoh
Contoh berikut membuat koleksi baru bernama empDetails dan menyisipkan dokumen menggunakan metode insertOne ().
> db.createCollection("empDetails")
{ "ok" : 1 }
> db.empDetails.insertOne(
{
First_Name: "Radhika",
Last_Name: "Sharma",
Date_Of_Birth: "1995-09-26",
e_mail: "[email protected]",
phone: "9848022338"
})
{
"acknowledged" : true,
"insertedId" : ObjectId("5dd62b4070fb13eec3963bea")
}
>
Metode insertMany ()
Anda dapat memasukkan banyak dokumen menggunakan metode insertMany (). Untuk metode ini, Anda perlu meneruskan serangkaian dokumen.
Contoh
Contoh berikut menyisipkan tiga dokumen berbeda ke dalam koleksi empDetails menggunakan metode insertMany ().
> db.empDetails.insertMany(
[
{
First_Name: "Radhika",
Last_Name: "Sharma",
Date_Of_Birth: "1995-09-26",
e_mail: "[email protected]",
phone: "9000012345"
},
{
First_Name: "Rachel",
Last_Name: "Christopher",
Date_Of_Birth: "1990-02-16",
e_mail: "[email protected]",
phone: "9000054321"
},
{
First_Name: "Fathima",
Last_Name: "Sheik",
Date_Of_Birth: "1990-02-16",
e_mail: "[email protected]",
phone: "9000054321"
}
]
)
{
"acknowledged" : true,
"insertedIds" : [
ObjectId("5dd631f270fb13eec3963bed"),
ObjectId("5dd631f270fb13eec3963bee"),
ObjectId("5dd631f270fb13eec3963bef")
]
}
>