Chapitre 6: Insertion de documents dans Golang MongoDB
Insérer un document
result, err := collection.InsertOne(
contexte.Background(), // Paramètre de contexte
bson.D{ // Définir un document JSON en utilisant bson.D
{"article", "toile"},
{"qty", 100},
{"tags", bson.A{"coton"}},
{"taille", bson.D{
{"h", 28},
{"w", 35.5},
{"uom", "cm"},
}},
})
// Obtenir l'ID unique généré pour le document
id := result.InsertedID
Astuce : Si vous n'êtes pas familier avec la représentation des données Golang MongoDB, veuillez consulter la section "Modèle de données Golang MongoDB" ici.
Équivalent à l'insertion du document JSON suivant :
{
"article": "toile",
"qty": 100,
"tags": ["coton"],
"taille": {
"h": 28,
"w": 35.5,
"uom": "cm"
}
}
Interroger le nouveau document inséré
cursor, err := collection.Find(
contexte.Background(),
bson.D{{"article", "toile"}}, // Expression équivalente : {"article": "toile"}
)
Insertion en masse
result, err := collection.InsertMany(
contexte.Background(),
[]interface{}{ // Passer un tableau de documents, insérer trois données de document
bson.D{ // Données du document 1
{"article", "journal"},
{"qty", int32(25)},
{"tags", bson.A{"vide", "rouge"}},
{"taille", bson.D{
{"h", 14},
{"w", 21},
{"uom", "cm"},
}},
},
bson.D{ // Données du document 2
{"article", "tapis"},
{"qty", int32(25)},
{"tags", bson.A{"gris"}},
{"taille", bson.D{
{"h", 27.9},
{"w", 35.5},
{"uom", "cm"},
}},
},
bson.D{ // Données du document 3
{"article", "tapis de souris"},
{"qty", 25},
{"tags", bson.A{"gel", "bleu"}},
{"taille", bson.D{
{"h", 19},
{"w", 22.85},
{"uom", "cm"},
}},
},
})
Interroger tous les documents
cursor, err := collection.Find(
contexte.Background(),
bson.D{}, // Passer une condition de requête vide
)