Conceitos Essenciais: Mixins e Operações MongoDB
Classificado em Computação
Escrito em em português com um tamanho de 4,44 KB
Mixins
Mixin é um conceito avançado da Programação Orientada a Objetos (OOP) e é possível implementá-lo em algumas linguagens de programação. É quando temos uma classe que contém uma combinação de métodos e queremos que outra classe utilize esses métodos já escritos. No entanto, essas duas classes não possuem um relacionamento direto entre elas.
É possível passar argumentos (ou parâmetros) para os Mixins.
MongoDB
Este banco de dados foi projetado para armazenar e processar uma grande quantidade de dados distribuídos em diversas máquinas.
Comandos Essenciais do MongoDB
- Criar Banco de Dados: Utilize o comando
use <nomeBanco>
. - Mostrar Bancos de Dados Existentes: Utilize o comando
show dbs
. - Inserir Documentos (Legacy):
db.nomeColecao.insert({ objeto })
- Excluir Banco de Dados:
db.dropDatabase()
- Listar Coleções:
show collections
oudb.getCollectionNames()
- Gerenciar Coleções:
- Criar Coleção:
db.createCollection(nome, opção)
- Excluir Coleção:
db.colecao.drop()
- Criar Coleção:
Inserindo Documentos no MongoDB
db.<collection>.insert()
: Insere um ou mais documentos em uma coleção (método legado).db.<collection>.insertOne()
: Insere um único documento na coleção.db.<collection>.insertMany()
: Insere múltiplos documentos na coleção.db.<collection>.save()
: Insere um documento ou atualiza um existente se o_id
for encontrado.
Contando Documentos
Para contar documentos em uma coleção, utilize:
db.<collection>.count()
Opções de Atualização (Update Options)
É possível especificar um terceiro parâmetro com algumas opções ao realizar atualizações:
- Upsert: Se
true
, cria um novo documento se o_id
não for encontrado. Por padrão, o valor éfalse
. - Multi: Se
true
, irá atualizar múltiplos documentos. Caso contrário, apenas um. - writeConcern: Define como o banco de dados manuseia a parte de gravação.
Operadores de Atualização (Update Operators)
Operadores são utilizados para manipular valores de campos em documentos. Os principais são:
$set
: Define o valor de um campo do documento.$unset
: Remove um campo específico do documento.$min
: Atualiza o campo se o novo valor for menor que o valor atual.$setOnInsert
: Define o valor caso a operação de atualização resulte em uma inserção (comupsert: true
).$max
: Atualiza o campo se o novo valor for maior que o valor atual.$rename
: Renomeia um campo.$mul
: Multiplica o valor de um campo por uma quantidade específica.$inc
: Incrementa o valor de um campo por uma quantidade específica.$currentDate
: Define o valor de um campo com a data e/ou hora atual.
Operadores para Arrays
$pull
: Remove uma lista de elementos de um array de acordo com o filtro.$push
: Adiciona um item a um array.$addToSet
: Adiciona um item a um array somente se ele ainda não existir.
Excluindo Documentos e Coleções
db.<collection>.drop()
: Exclui uma coleção completa.db.<collection>.delete()
: Exclui um ou muitos documentos de acordo com o filtro (verificar uso, pode ser um erro de digitação pararemove()
ou genérico).db.<collection>.deleteOne()
: Exclui um único documento de acordo com o filtro.db.<collection>.deleteMany()
: Exclui vários documentos de acordo com o filtro.
Consultas (Query)
Podemos consultar dados em um banco de dados NoSQL utilizando o método find()
.
db.<collection>.find()