MongoDB – O início

Depois de instalar o MongoDB e fazer o teste descrito no último post, vem a pergunta: E agora??

Eu comecei usando o Git Bash para acessar uma base de dados, e adivinhem: alguns comandos simplesmente não executam, nem dão retorno. Desconfiado do prompt fui pro cmd do windows e finalmente consegui caminhar no Mongo…

Deixando o mongod rodando em um prompt, abra outro prompt para usar o mongo. No prompt digite mongo teste

Ao fazer isso você está acessando a base teste, mesmo sem tê-la criado previamente. Você pode verificar se há alguma base existente digitando show databases, se houver o mongo informa nome  e tamanho da(s) base(s). É possível acessar outras bases utilizando o comando “use NOME_DA_BASE”, se for digitado o nome de uma base inexistente o mongo vai assumir a criação desta base. Digite no prompt:

use agenda

As bases do MongoDB ao invés de possuírem tabelas, são formadas por coleções. Provavelmente você já deve ter pesquisado sobre o mongo e tenha descoberto que ele é um banco de dados orientado a documentos, as coleções representam um conjunto de documentos. As coleções são criadas quando um documento é salvo ou inserido, a diferença básica entre salvar e inserir um documento está no nome deste documento. Se você faz um insert o MongoDB vai determinar um nome aleatório para o documento, enquanto o processo de salvar permite determinar o nome de cada documento. Pelo que vi na minha pesquisa, a maioria dos desenvolvedores tem usado o método de inserção, mas como comecei  aprender com o save, vou mostrar como funcionam os 2.

Primeiro veremos dois modos de inserção:

db.contatos.insertOne( {nome: “Luciano”, telefone: “9999-9999”} );
db.contatos.insertOne( {nome: “Adriana”} );
db.contatos.insertOne ( {nome: “Kelly”, dt_nascimento: ISODate(“1982/11/29”)});

db.contatos.insertMany([
{nome: “Leandro”, email: “leo@bol.com.br”},
{nome: “Roberta”, telefone: “9876-5432”}
]);

Quando executamos o primeiro comando, a coleção contatos é criada e o documento adicionado. Para consultarmos os documentos inseridos usamos o comando:

db.contatos.find();

Agora vejamos o save; há um passo anterior no modo save, é preciso determinar o nome do documento, que deve ser único, execute os comandos a seguir:

contato1 = {nome: “Carla”, telefone: “2209-1234”}
db.contatos.save(contato1)
contato2 = {nome: “Marcos”, email: “marcos@hotmail.com”}
db.contatos.save(contato2)

Se você der um db.contatos.find(); vai ver que o comando fez um insert, porém conhecendo o nome do documento. Se você digitar contato1 ou contato2, o mongo vai retornar o documento referente ao nome determinado. Você pode ver quantos registros há numa coleção adicionando o método count na busca:

db.contatos.find().count()

Se precisar deletar um registro você precisa copiar o id do objeto para deletar, o comando é:

db.contatos.deleteOne( { “_id” : ObjectId(“5748fa15c2c92d1cb7898a5b”) } );

E para atualizar um registro o id pode ser utilizado:

db.contatos.updateOne(
{ _id : ObjectId(“5748fa15c2c92d1cb7898a5c”) },
{ $set: { “telefone” : “98888-8888” } }
);

Também é possível atualizar pelo atributo do documento, como vemos a seguir.

db.contatos.updateOne(
{ “nome” : “Luciano” },
{ $set: { “telefone” : “99666-2211” } }
);

Bom galera, nós vimos as 4 operações do CRUD, depois disso é só expandir as bases, trabalhando com apontadores, que farão o trabalho da foreing keys  do sql. Es´pero que esse artigo possa ajudar nesse inicio de caminhada.

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s