Gérer une collection dans Azure Cosmos DB pour MongoDB à l’aide de JavaScript
S’APPLIQUE À : MongoDB
Gérez votre collection MongoDB stockée dans Azure Cosmos DB avec le pilote client MongoDB natif.
Notes
Les exemples d’extraits de code sont disponibles sur GitHub sous la forme d’un projet JavaScript.
Documentation de référence de l’API pour MongoDB | Package MongoDB (npm)
Nommer une collection
Dans Azure Cosmos DB, une collection est analogue à une table dans base de données relationnelle. Lorsque vous créez une collection, le nom de la collection forme un segment de l’URI utilisé pour accéder à la ressource de collection et à tous les documents enfants.
Obtenir une instance de collection
Utilisez une instance de la classe Collection pour accéder à la collection sur le serveur.
Les extraits de code suivants supposent que vous avez déjà créé votre connexion client et que vous fermez votre connexion client après ces extraits de code.
Création d'une collection
Pour créer une collection, insérez un document dans la collection.
// get database client for database
// if database or collection doesn't exist, it is created
// when the doc is inserted
// insert doc
const doc = { name: `product-${random}` };
const insertOneResult = await client.db("adventureworks").collection("products").insertOne(doc);
console.log(`Insert 1 - ${JSON.stringify(insertOneResult)}`);
// insert docs
const docs = [
{ name: `product-${random}` },
{ name: `product-${random}` }
];
const insertManyResult = await client.db("adventureworks").collection("products").insertMany(docs);
console.log(`Insert many ${JSON.stringify(insertManyResult)}`);
Annuler une collection
Annulez la collection de la base de données pour la supprimer définitivement. Toutefois, l’opération d’insertion ou de mise à jour suivante qui accède à la collection crée une collection avec ce nom.
// Drop the collection from the database, removing it permanently.
// New accesses will create a new collection.
// drop from db instance
const dropCollection1 = await client.db("adventureworks").dropCollection("products");
console.log(`Collection dropped:\t${JSON.stringify(dropCollection1)}`);
// drop from collection instance
const dropCollection2 = await client.db("adventureworks").collection('products-2').drop();
console.log(`Collection dropped:\t${JSON.stringify(dropCollection2)}`);
L’extrait de code précédent affiche l’exemple de sortie de console suivant :
Collection dropped: true
Collection dropped: true
done
Obtenir des index de collection
Un index est utilisé par le moteur de requête MongoDB pour améliorer les performances des requêtes de base de données.
// Get all indexes in collection
const collectionInstance = await client.db("adventureworks").collection('products')
const indexes = await collectionInstance.indexes();
console.log(`Indexes on collection:\n${Object.keys(indexes).map(key => `\t${key}: ${JSON.stringify(indexes[key])}\n`)}`);
L’extrait de code précédent affiche l’exemple de sortie de console suivant :
Indexes on collection:
0: {"v":1,"key":{"_id":1},"name":"_id_","ns":"adventureworks.products"}
, 1: {"v":1,"key":{"name":1},"name":"name_1","ns":"adventureworks.products"}
done