Menu Docs
Página inicial do Docs
/ / /
Controlador Node.js
/

Exclua documentos

Nesta seção, mostramos como chamar as operações de gravação para remover documento de uma collection no MongoDB database.

Se quiser remover documentos existentes de uma collection, você pode usar deleteOne() para remover um documento ou deleteMany() para um ou mais documentos. Esses métodos aceitam um documento de query que corresponde aos documentos que você deseja excluir.

Observação

Se seu aplicação usar informações sobre o documento excluído após a exclusão, você poderá usar o método.findOneAndDelete() método, que tem uma interface semelhante a deleteOne(), mas também retorna o documento excluído.

Você pode especificar o documento ou documentos a serem excluídos pelas operações de gravação deleteOne() ou deleteMany() em um objeto JSON da seguinte forma:

const doc = {
pageViews: {
$gt: 10,
$lt: 32768
}
};

Para excluir o primeiro documento correspondente usando o método deleteOne() ou para excluir todos os documentos correspondentes usando o método deleteMany() , passe o documento como parâmetro de método:

const deleteResult = await myColl.deleteOne(doc);
const deleteManyResult = await myColl.deleteMany(doc);

Você pode imprimir o número de documentos excluídos pela operação acessando o campo deletedCount do resultado para cada uma das chamadas de método acima como segue:

console.dir(deleteResult.deletedCount);
console.dir(deleteManyResult.deletedCount);

Se a operação de exclusão for bem-sucedida, essas declarações imprimirão o número de documentos excluídos pela operação associada.

Observação

Exemplo de configuração

Esse exemplo se conecta a uma instância do MongoDB usando um URI de conexão. Para saber mais sobre como se conectar à sua instância do MongoDB, consulte o guia Conectar ao MongoDB. Este exemplo também utiliza a coleção do movies no banco de dados do sample_mflix incluído nos conjuntos de dados de amostra do Atlas. Você pode carregá-los em seu banco de dados na camada grátis do MongoDB Atlas seguindo o Guia de Introdução ao Atlas.

Observação

Nenhum recurso específico do Typescript

O seguinte exemplo de código utiliza JavaScript. Não existem características específicas do Typescript do condutor relevantes para este caso de utilização.

O código a seguir é um arquivo completo e autônomo que executa uma operação de exclusão:

1// Delete a document
2
3import { MongoClient } from "mongodb";
4
5// Replace the uri string with your MongoDB deployment's connection string
6const uri = "<connection string uri>";
7
8const client = new MongoClient(uri);
9
10async function run() {
11 try {
12 const database = client.db("sample_mflix");
13 const movies = database.collection("movies");
14
15 /* Delete the first document in the "movies" collection that matches
16 the specified query document */
17 const query = { title: "Annie Hall" };
18 const result = await movies.deleteOne(query);
19
20 /* Print a message that indicates whether the operation deleted a
21 document */
22 if (result.deletedCount === 1) {
23 console.log("Successfully deleted one document.");
24 } else {
25 console.log("No documents matched the query. Deleted 0 documents.");
26 }
27 } finally {
28 // Close the connection after the operation completes
29 await client.close();
30 }
31}
32// Run the program and print any thrown exceptions
33run().catch(console.dir);

Ao executar o exemplo anterior, você verá a seguinte saída:

Successfully deleted one document.

Se você executar o exemplo mais de uma vez, o código produzirá a seguinte saída porque você excluiu o documento correspondente na primeira execução:

No documents matched the query. Deleted 0 documents.

Observação

Exemplo de configuração

Esse exemplo se conecta a uma instância do MongoDB usando um URI de conexão. Para saber mais sobre como se conectar à sua instância do MongoDB, consulte o guia Conectar ao MongoDB. Este exemplo também utiliza a coleção do movies no banco de dados do sample_mflix incluído nos conjuntos de dados de amostra do Atlas. Você pode carregá-los em seu banco de dados na camada grátis do MongoDB Atlas seguindo o Guia de Introdução ao Atlas.

O código a seguir é um arquivo completo e autônomo que executa uma operação de exclusão:

1// Delete multiple documents
2
3import { MongoClient } from "mongodb";
4
5// Replace the uri string with your MongoDB deployment's connection string.
6const uri = "<connection string uri>";
7
8const client = new MongoClient(uri);
9
10async function run() {
11 try {
12 const database = client.db("sample_mflix");
13 const movies = database.collection("movies");
14
15 /* Delete all documents that match the specified regular
16 expression in the title field from the "movies" collection */
17 const query = { title: { $regex: "Santa" } };
18 const result = await movies.deleteMany(query);
19
20 // Print the number of deleted documents
21 console.log("Deleted " + result.deletedCount + " documents");
22 } finally {
23 // Close the connection after the operation completes
24 await client.close();
25 }
26}
27// Run the program and print any thrown exceptions
28run().catch(console.dir);
1// Delete multiple documents
2
3import { MongoClient } from "mongodb";
4
5// Replace the uri string with your MongoDB deployment's connection string
6const uri = "<connection string uri>";
7
8const client = new MongoClient(uri);
9
10async function run() {
11 try {
12 const database = client.db("sample_mflix");
13 const movies = database.collection("movies");
14
15 /* Delete all documents that match the specified regular
16 expression in the title field from the "movies" collection */
17 const result = await movies.deleteMany({ title: { $regex: "Santa" } });
18
19 // Print the number of deleted documents
20 console.log("Deleted " + result.deletedCount + " documents");
21 } finally {
22 // Close the connection after the operation completes
23 await client.close();
24 }
25}
26// Run the program and print any thrown exceptions
27run().catch(console.dir);

Executar o exemplo anterior pela primeira vez resulta na seguinte saída:

Deleted 19 documents

Se você executar o exemplo mais de uma vez, verá a seguinte saída porque excluiu os documentos correspondentes na primeira execução:

Deleted 0 documents

Para saber mais sobre qualquer um dos tipos ou métodos discutidos neste guia, consulte a seguinte documentação da API:

Voltar

Atualizar arrays

Nesta página