Bab 6: Penyisipan Dokumen di MongoDB Golang
Menyisipkan Dokumen
result, err := collection.InsertOne(
context.Background(), // Parameter Konteks
bson.D{ // Mendefinisikan dokumen JSON menggunakan bson.D
{"item", "kanvas"},
{"qty", 100},
{"tags", bson.A{"katun"}},
{"size", bson.D{
{"h", 28},
{"w", 35.5},
{"uom", "cm"},
}},
})
// Dapatkan ID unik yang dihasilkan untuk dokumen
id := result.InsertedID
Tip: Jika Anda tidak familiar dengan representasi data Golang MongoDB, silakan lihat bagian "Model Data MongoDB Golang" di sini.
Setara dengan menyisipkan dokumen JSON berikut:
{
"item": "kanvas",
"qty": 100,
"tags": ["katun"],
"size": {
"h": 28,
"w": 35.5,
"uom": "cm"
}
}
Meminta Dokumen yang Baru Disisipkan
cursor, err := collection.Find(
context.Background(),
bson.D{{"item", "kanvas"}}, // Ekspresi setara: {"item": "kanvas"}
)
Penyisipan Massal
result, err := collection.InsertMany(
context.Background(),
[]interface{}{ // Berikan sebuah array dokumen, sisipkan data dari tiga dokumen
bson.D{ // Data dokumen 1
{"item", "jurnal"},
{"qty", int32(25)},
{"tags", bson.A{"kosong", "merah"}},
{"size", bson.D{
{"h", 14},
{"w", 21},
{"uom", "cm"},
}},
},
bson.D{ // Data dokumen 2
{"item", "matras"},
{"qty", int32(25)},
{"tags", bson.A{"abu"}},
{"size", bson.D{
{"h", 27.9},
{"w", 35.5},
{"uom", "cm"},
}},
},
bson.D{ // Data dokumen 3
{"item", "pad mouse"},
{"qty", 25},
{"tags", bson.A{"gel", "biru"}},
{"size", bson.D{
{"h", 19},
{"w", 22.85},
{"uom", "cm"},
}},
},
})
Meminta Semua Dokumen
cursor, err := collection.Find(
context.Background(),
bson.D{}, // Berikan kondisi kueri kosong
)