Olá pessoal tudo bem com vocês aqui é o Fernando e hoje eu quero trazer a segunda parte do portfólio de banco de dados Não relacionais nós vamos dar continuidade ao vídeo anterior onde nós fizemos a instalação das três ferramentas que nós vamos utilizar no decorrer desta atividade que são elas o mongo DB que é o nosso banco de dados o Compass que é a interface gráfica do Mongo DB e do Mongo Shell que nós vamos utilizar para fazer especificamente somente a última consulta do banco de dados que a atividade pede para que ela seja feita
através da linha de comando se você não sabe como fazer a instalação dessas três ferramentas eu peço para vocês darem uma olhada no primeiro link que está na descrição do vídeo que é onde eu ensino a vocês a fazer toda a instalação tá bom mesmo que você anteriormente não tenha mexido com o o mongo DB seja a primeira vez que você está mexendo né criando um banco de dados e criando uma Collection no no mongo DB vocês vão ver que não tem dificuldade tá é é bastante simples requer um pouco de atenção então a dica
que eu dou para vocês façam a atividade com calma tá prestem bastante atenção no nos comandos que eu passo on onde eu clico se vocês ficarem com alguma dúvida vejam novamente né a parte Vejam o vídeo novamente e principalmente não tentem fazer junto tá bom vejam primeiro e depois tentem fazer eu tenho certeza que vocês vão conseguir realizar essa atividade Tá tô aqui torcendo por por todos vocês e a ajuda que eu peço se vocês gostarem desse vídeo se agregou alguma coisa para vocês e vocês conseguiram fazer a atividade deixa aí seu like se você
ainda não é inscrito no canal se inscreve Compartilha o vídeo com outros colegas de faculdade de vocês que precisam fazer e essa atividade também tá dessa maneira vocês vão me ajudar muito então vamos lá criar o nosso banco de dado e a nossa Collection Então vamos lá pessoal esta aqui é a tela inicial do Mongo DB tá por questões de objetividade eu não vou ensinar a criar um usuário e uma senha para o mongo DB né Nós vamos fazer somente o passo a passo da atividade proposta mas se vocês quiserem informações a mais sobre o
mongo DB deixa aí nos comentários né Nós podemos trazer um tutorial aqui para o canal mas aí depende de vocês tá bom então o que que nós vamos fazer aqui vamos clicar em Connect e aqui do nosso lado esquerdo ele já traz as informações de bancos de dados esses três aqui são padrão que o mongo DB traz para nós criarmos o banco que a atividade pede nós vamos clicar aqui neste sinal de mais aqui em cima está escrito databases nós vamos clicar nesse sinal de mais e já aparece aqui para nós a tela né Create
Database nós vamos colocar aqui as informações o nome do banco de dados É loja DB e o nome da coleção é vendas feito isso nós vamos clicar aqui em Create Database né e pronto o banco de dados ele já foi criado o que é importante observarmos aqui nesta tela pessoal vejam que automaticamente ele já selecionou a Collection vendas né Que Nós criamos a estrutura que ele usa é essa nome do banco de dados pon nome da Collection Se tivermos mais do que uma Collection ela vai aparecer aqui né para a navegação e para inserirmos os
dados que nós precisamos aqui na Collection vendas como que nós fazemos aqui neste botão verde add data vamos clicar nele e vir aqui insert document percebam que ele tem a mesma estrutura né de um arquivo Jon Deixa eu só apagar esse comentário aqui que não vai ter utilidade para quem não conhece a estrutura de um de um arquivo Jon né aspas duplas temos uma chave dois pontos e um valor essa é a estrutura básica de um arquivo o que que nós vamos fazer aqui então para inserir os dados a ID o mongo DB já criou
automaticamente no final dessa chave aqui da ID nós vamos colocar uma vírgula percebam que ele vai dar uma mensagem de erro aqui que é a seguinte como nós colocamos uma vírgula automaticamente nós devemos ter uma outra chave seguida de um valor então erros estruturais percebam que o mongo DB ele vai brecar ele não vai deixar acontecer pode ser que aconteça algum erro de digitação algum erro na lógica então prestem bastante atenção Nesta parte Tá bom vamos colocar aqui então a nossa primeira informação que é o nome do cliente procurem colocar também essas informações de chave
sem em letra minúscula para manter um padrão e não ter problema na hora de fazer as consultas então colocamos ali a nossa chave nome Vamos colocar o valor agora que é João uma vírgula o cliente ele é VIP um porque ele é percebam aqui o seguinte quando eu coloquei uma string né eu coloquei entre aspas como aqui é só um número eu não preciso colocar entre aspas tá bom o próximo campo do João é o e-mail e o próximo Campo que ele tem é telefone percebam aí que na atividade ele tem mais de um telefone
como que nós vamos colocar aqui essa informação podemos colocar no formato de lista para isso nós vamos abrir o colchete o próprio compas já vai fechar ali o colchete para nós entre aspas Vamos colocar a informação que nós queremos vírgula e o outro telefone do João feito isso nós vamos clicar aqui no botão insert os dados já foram adicionados na nossa Collection percebam aqui ó que telefone colocou Array tem dois dados dentro dessa array Nós temos dois tipos de visualização aqui tá pessoal percebam aqui do lado é na verdade três né Tem esse essa primeira
aqui essa que tem as chaves então pode ser que para alguns estejam desta maneira ou então desta maneira aqui é tudo questão de visualização veja Qual que é a melhor para vocês tá Particularmente eu prefiro deixar aqui como um um objeto Jon Mas isso é de cada um para adiantar eu pa aqui vídeo aú que eu fazos do Marcos e da Maria Lembrando que o Marcos não temesse Campo de e-mail então vocês não precis mas tem todas as outras informações o telefone do Marcos vai ser somente uma string tá E os telefones os contatos da
Maria vão ser igual aqui no João uma lista com três números de telefones Tá bom eu vou lançar os dados aqui e já volto para falar com vocês Ah e se alguém tem dúvida em como que vai colocar esses dados add data insert document tá bom bom pessoal eu já fiz aqui a inserção dos dados tá eh de uma olhada aqui como ficou Olha o Marcos ele não tem o e-mail então eu não coloquei este Campo a Maria tem os três telefones muito semelhante com a do João né agora o que que nós vamos fazer
nós vamos editar essas informações inserindo o endereço de cada um deles tá para editar as informações o que que nós vamos fazer passo o mouse aqui em em cima de qualquer uma desses dados né vamos começar aqui pelo João que é o primeiro reparem que aqui tem esse desenho de um lápis né Edit vamos clicar nele e ele abriu aqui para nós a edição então o que que nós vamos fazer vamos colocar a vírgula Olha reparem que deu aqui o erro né porque a estrutura está incompleta Vamos colocar lá qual que é a nossa chave
é endereço né E aqui agora tem uma um um outro ponto importante o endereço ele vai ser no formato de um objeto né Jon como que nós vamos colocar essa informação reparem aqui que além dessa estrutura né de chave e valor o objeto Jon Ele está entre Chaves né abre a chave e fecha a chave Vamos replicar essa mesma informação aqui vamos abrir a chave automaticamente o mongo DB já colocou para nós a informação né Opa apertar o enter aqui para ficar mais fácil e vai ser da mesma maneira teremos aqui a nossa chave que
vai ser o quê a rua e o nosso valor no caso do João é Rua 1 vírgula olha ali o errinho estrutural temos agora o o número né da casa vamos colocar a nossa vírgula Nossa outra chave que é o complemento que é apartamento um bloco Um vírgula cidade de São Paulo e a nossa última informação do endereço que é o estado Vamos colocar aqui vamos pôr estado mesmo ele é de São Paulo aproveita pessoal deixa aí nos comentários a cidade de onde você está falando né de qual estado você é para mim saber aqui
até onde tá chegando qual faculdade você faz ou o curso né é muito bom pra gente se conhecer pessoal tendo inserido essas informações aqui vamos clicar aqui em replace e pronto os dados do João já foram eh alterados vocês vão fazer a mesma coisa agora para o Marcos e e para a Maria seguindo as informações que tem no roteiro da atividade eu vou colocar uma pausa aqui novamente vou inserir as informações e depois nós vamos adicionar as compras tá bom bom pessoal dando continuidade agora nós vamos colocar as compras as compras vão mexer com dois
conceitos que nós já utilizamos aqui o conceito de listas e e o conceito de objetos né que nós utilizamos aqui no endereço Então nós vamos criar o que agora uma lista com esses objetos Eu já coloquei aqui os dados do João porque é somente um né e eu vou fazer junto com vocês o do Marcos que ele tem três produtos para cadastrarmos então é mais interessante mostrar aqui o dele mas a mesma coisa que vocês fizerem no do Marcos vocês vão fazer no do João e no da Maria Tá bom então o que que nós
vamos fazer mouse aqui nos dados do Marcos vamos clicar no no lápis aqui em Edit logo após o endereço Vamos colocar uma vírgula e vamos colocar a nossa chave que é compras as nossas compras elas são uma lista Então vamos abrir o colchete e ela vai ser uma lista do quê uma lista de objetos Então vamos abrir a chave né E vamos colocar lá produto ele comprou um caderno vírgula o preço olha aqui vamos colocar preco né lembra do que eu falei para vocês eh letra minúscula vamos evitar também caracteres especiais no caso o csd
ilha aqui espaçamentos tá bom o preço do caderno foi e a quantidade que ele comprou foi um lançamos aqui a primeira compra do Marcos o que que nós vamos fazer agora para lançar a próxima compra vamos vir aqui olha no final N nessa chave aqui que fecha esse objeto que a gente colocou Vamos colocar uma vir e o nosso outro abre Chaves lá tá para adiantar pessoal vamos copiar aqui esses dados e vamos colar aqui e só fazer a alteração né ele comprou [Música] caneta o preço da caneta é R 3 e ele comprou 5
finalizou essa compra Vamos colocar uma vírgula depois da chave que fecha esse objeto abre e fecha Chaves de novo e a próxima compra dele foi uma borracha o preço da Borracha foi r$ 2 e ele comprou duas borrachas vamos clicar aqui em replace para atualizar E agora vocês vão fazer a atualização aqui da Maria Lembrando que a Maria comprou dois produtos então aqui nas nossas compras nós vamos ter dois arrays tá olha aqui como que fica para vocês expandirem é só clicar na setinha ó tá vendo e aqui O João ele fez somente uma compra
que é do notebook vejam aí como que ficou a estrutura né Então agora vocês vão fazer as atualizações então o que que nós fizemos até aqui criamos o nosso banco de dados chamado loja criamos a colection vendas inserimos três documentos neles né que são a os documentos do João do Marcos e da Maria fizemos a edição desses registros né inserimos novos dados Como por exemplo o endereço e as compras trabalhamos aqui com o conceito de listas e com o conceito de objetos e também com o conceito de objetos dentro de listas tá então façam essa
parte se até aqui teve alguma dúvida revejam O o vídeo tá tentem fazer com calma eu tenho certeza que vocês vão conseguir Mas se tiver qualquer dúvida pessoal deixa aí nos comentários Tá bom eu vou dar uma pausa aqui agora e Nós já vamos para a parte das consultas no nosso banco de dados agora pessoal nós vamos para a parte final do nosso portfólio que é para realizar as consultas vocês vão ver que não tem nenhuma dificuldade tá é bem simples A única coisa que eu fiz aqui foi deixar os dados todos e ocultos né
para reexibir é só clicar aqui nas setinhas Mas nós vamos fazer isso de outra maneira agora então a primeira consulta que nós temos que fazer realize uma consulta que retorne todos os documentos da Collection Essa é a mais fácil de todas aqui neste Campo aqui em cima onde tá escrito Filter e tem esses três botões explain reset e find vamos clicar em find sem colocar nenhum argumento aqui e ele nos retorna todas as informações as informações do João só expandir aqui os dados olha para reexibir as informações do Marcos e as informações da Maria então
esta primeira consulta realizamos ela com sucesso a segunda consulta que a atividade propõe é realize uma consulta que localize as informações da cliente Maria então aqui em Filter Note que ele já coloca as chaves ali para nós então vamos colocar a chave que nós queremos com o valor que são os dados da Maria e vamos clicar em find Note que agora ele vai trazer somente as informações da Maria os três telefones dela o endereço e as duas compras que ela efetuou que foi o tablet e a capa para tablet a nossa terceira consulta realize uma
busca que retorne os clientes VIPs da loja né Note que aqui olha no campo Vip nós temos o João e a Maria como vips então nesta consulta o Marcos ele não vai aparecer como que nós vamos realizar esta consulta pessoal e aqui tem esse botão options vamos clicar nele e vai expandir aqui esses dados aqui em Filter Vamos colocar lá o campo que nós queremos que é o vip que seja com o valor igual a 1 Só que nós queremos apenas o nome desses clientes aqui em project vamos clicar aqui vamos colocar nome e vamos
colocar novamente aqui o número um para ele trazer somente os nomes para nós e vamos clicar em find Olha só trouxe o João e trouxe a Maria tá e pessoal muito cuidado aqui com essas chaves que vocês colocam lembre-se do que eu falei para vocês coloquem em letra minúscula evitem caracter especial acento tá bom porque se vocês colocam diferente em algum dos dados essa parte aqui ela ela pode dar erro tá a próxima consulta que nós temos que fazer bom já retornamos todos os clientes retornamos a Maria os clientes VIP então agora são somente as
compras efetuadas pelo Marcos tá ela vai ser essa consulta é muito semelhante a esta daqui né Vamos clicar aqui em reset para limpar as informações o filtro o que que nós queremos o nome né queremos o Marcos e o que que nós queremos do Marcos queremos o campo compras dele né E novamente vamos colocar aqui o número um para retornar todas as compras ao clicar aqui no botão find Note que temos aqui olha todas as compras do Marcos que foram três né o caderno a caneta e a borracha agora nós vamos realizar a nossa última
consulta que é realize uma consulta que retorne todos os nomes de produtos comprados por todos os clientes nesta consulta em específico utilize a linha de comando do Mongo DB ou seja nós não vamos utilizar aqui a parte visual vocêis vocêé do comps vamos mells insto anteri aqui ol dentro do comp nesso tem aqui shli Aqui tem a linha de comando eu utilizar pelo Windows terminal então aqui na minha barra de pesquisa do Windows eu vou escrever terminal e vou clicar aqui em executar como administrador não são todos os computadores que tem o Windows terminal porque
ele não vem por padrão então tem que baixar na loja do Windows se você não quer ter esse trabalho pessoal sem problema algum pode utilizar por aqui tá Então vamos lá para iniciar o o mongo Shell o que que eu vou fazer vou escrever mongo sh ele já fez aqui a conexão se acontecer de dar um erro Nesta parte eu explico lá no final do primeiro vídeo tá pessoal e o que que eu vou fazer aqui e use e o nome do nosso banco de dados porque ele abre por padrão nesse banco teste aqui olha
então eu vou colocar euse loja DB e vou dar um enter aqui alterou para loja DB eu vou limpar aqui a tela só para não ficar muitas informações agora o que que nós vamos fazer aqui nós já estamos dentro do nosso banco de dados loja DB Então dentro deste banco de dados eu especifico isso por este DB dou um ponto para utilizar a Collection vendas eu quero que ele Junte todos os dados né Eu quero que ele faça uma agregação de dados então ponto agregate tá vou Abrir parênteses e vou abrir Chaves que que eu
vou fazer aqui eu vou segurar a tecla shift e vou apertar enter para não ficar tudo na mesma linha vou abrir Chaves [Música] aqui sinal de cifrão e esse comando que eu vou utilizar aqui annd é para ele tratar cada uma das compras como um objeto independente Tá o que que eu vou fazer pessoal essa linha de comando aqui e também o modelo do portfólio eu vou deixar disponível para download Tá bom então Eh eu vou deixar o link aí vou deixar dentro de uma pasta no Google Drive o que eu vou pedir para vocês
dentro da da pasta essei é do portfólio de projeto de software mas só para explicar tá vocês vão clicar aqui nesta setinha e vocês vão clicar em fazer o download que ele vai fazer o download de todos os arquivos que tem aqui por favor não peçam para editar o o arquivo aro daqui de dentro da pasta senão vai dar erro tá vocês vão clicar aqui e fazer download Tá eu vou deixar o modelo do portfólio vou deixar Este comando que eu estou utilizando e uma explicação do que que é Este comando tá bom do que
que cada item faz então dando continuidade especifiquei aqui através do DB que eu quero utilizar este banco de dados loja DB na tabela vendas e eu quero fazer uma agregação desses valores aggregate vou Abrir parênteses vou abrir colchete shift e Enter abriu e abro Chaves novamente dou Este comando annd né cifrão anwi dois pontos abro aspas cifrão novamente o que que eu quero eu quero as compras fecho aspas fecho chave vírgula segurando shift eu aperto enter novamente o que que eu quero fazer agora eu quero projetar as compras então cifrão pro dois pontos vou abrir
Chaves de novo aqui underline ID 2 p0 porque eu não quero que mostre a ID eu quero somente que mostre o nome dos produtos vírgula eu quero que apareça como nome produto dois pontos abro aspas novamente cifrão o que que eu quero que apareça no meu campo compras um ponto eu quero que apareça o produto deixa só eu ver aqui pessoal se eu coloquei produto ou produtos é eu coloquei produto então é compras pon produto vou fechar as minhas aspas vou fechar essa chave aqui e eu tenho que fechar mais uma chave não se esqueçam
disso tá pessoal shift enter novamente vou fechar o colchete e vou fechar os e Enter olha aqui pessoal apareceu cada produto que foi comprado notebook caderno Canet borracha tablet capa para tablet quer fazer aqui [Música] pelo pelo mell sem problema algum euse loja DB enter acho que fica muito pequeno né para para vocês verem bom mas vamos fazer por aqui para para mostrar para vocês que também dá para fazer loja DB DB P vendas pon aggregate por aqui é até mais fácil porque vocês viram que eles têm o que ele tem o auto complete abri
e Fechei os parênteses já foi automático quando eu colocar o colchete é a mesma coisa vou dar um enter aqui dois enters Qual que é a primeira coisa que eu quero que ele Face separe para mim cada documento de forma separada o que que eu quero que ele Separe para mim as compras vírgula eu quero que ele projete da seguinte maneira underline ID zero porque eu quero que ele omita essa informação quero que ele mostre para mim como nome do produto dois pontos o que que eu quero que ele mostre para mim compras Opa eu
coloquei compras ou compra é compras compras ponto produto já fechou as duas Chaves fechou o parênteses e fechou o colchete vou colocar o cursor aqui no final e Enter olha só ele só mostrou aqui de uma maneira um pouco diferente do Windows terminal tá vendo que ele pulou uma linha mas está tudo aqui olha notebook caderno caneta borracha tablet e capa para tablet Então é isso pessoal eu espero que vocês tenham conseguido realizar essa atividade tá E vocês viram não tem muita dificuldade mesmo que vocês nunca tenham mexido com o o mongo DB só sigo
o passo a passo da instalação das três ferramentas que nós precisamos que é o mongo DB o Compass e o mongo Shell Preste bastante atenção quando vocês forem colocar o nome dos Campos tá bom o modelo do portfólio ele vai estar disponível para download tá lembrem-se vocês têm que fazer o download tá não pedir para editar faz o download do arquivo Tá certo e no mais eu espero que vocês tenham conseguido realizar essa atividade Tá tô aqui torcendo por vocês por favor deixe o comentário aí do que vocês acharam desse vídeo isso daí vai me
ajudar muito se gostou se te ajudou Deixa aí o seu curtir se você ainda não é inscrito no canal se inscreva tá E também se for possível compartilhe aí esse vídeo com um amigo que esteja precisando tá bom eh nos comentários do do vídeo desculpe na descrição do vídeo o primeiro link é para a a primeira parte deste deste desta sequência aqui onde tem a instalação das Ferramentas o segundo link é para vocês fazerem o download do modelo do portfólio e a explicação desse desse último comando da linha de comando né O que que ele
significa e eu também vou deixar um link que é de um grupo do WhatsApp Esse grupo é para tem a maioria deles é de estudantes de engen de software Mas mesmo que você faça análise e desenvolvimento de sistema você também vai ser muito bem-vindo tá bom independente do semestre que você está Vem aqui junto com a gente compartilhar informação compartilhar conhecimento mais uma vez eu agradeço a presença de vocês aqui e até a próxima pessoal