Partilhar via


Gerenciar uma coleção no Azure Cosmos DB para MongoDB usando JavaScript

APLICA-SE A: MongoDB

Gerencie sua coleção MongoDB armazenada no Azure Cosmos DB com o driver de cliente MongoDB nativo.

Nota

Os trechos de código de exemplo estão disponíveis no GitHub como um projeto JavaScript.

Documentação | de referência da API para MongoDB Pacote MongoDB (npm)

Nomeie uma coleção

No Azure Cosmos DB, uma coleção é análoga a uma tabela em um banco de dados relacional. Quando você cria uma coleção, o nome da coleção forma um segmento do URI usado para acessar o recurso de coleção e quaisquer documentos filho.

Aqui estão algumas regras rápidas ao nomear uma coleção:

  • Mantenha nomes de coleção entre 3 e 63 caracteres
  • Os nomes das coleções só podem conter letras minúsculas, números ou o caractere traço (-).
  • Os nomes dos contêineres devem começar com uma letra ou número minúsculo.

Obter instância de coleta

Use uma instância da classe Collection para acessar a coleção no servidor.

Os trechos de código a seguir pressupõem que você já criou sua conexão de cliente e que fecha sua conexão de cliente após esses trechos de código.

Criar uma coleção

Para criar uma coleção, insira um documento na coleção.

// 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)}`);

Solte uma coleção

Solte a coleção do banco de dados para removê-la permanentemente. No entanto, a próxima operação de inserção ou atualização que acessa a coleção criará uma nova coleção com esse nome.

// 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)}`);

O trecho de código anterior exibe a seguinte saída de console de exemplo:

Collection dropped:     true
Collection dropped:     true
done

Obter índices de coleção

Um índice é usado pelo mecanismo de consulta MongoDB para melhorar o desempenho de consultas de banco de dados.

// 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`)}`);

O trecho de código anterior exibe a seguinte saída de console de exemplo:

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

Consulte também