E aí pessoal beleza mais uma vez Estamos aqui no curso programação com acesso ao banco de dados e é uma satisfação ter você por aqui é uma satisfação saber que de alguma forma eu tô contribuindo com o seu conhecimento e a gente poderia firmar uma parceria no sentido de eu compartilho um pouco do que eu sei desse conteúdo e você dá uma força para o canal você se inscreve você compartilha esse vídeo com seus amigos você deixa o like porque esse é o termômetro que eu tenho dos vídeos que eu tô fazendo por aqui então
se você não assiste você não deixa um like você não compartilha e esse vídeo não chegou outras pessoas é como se o que eu tô produzindo aqui não tem importância então o fato de se inscrever no canal ativar as notificações dá um like no vídeo Isso mostra que esse conteúdo é importante para você é importante para outras pessoas beleza vamos convidar isso no vídeo passado nós fizemos uma simulação no sentido de a gente usou lá uma rota do tipo post para incluir um autor em uma rei tá a gente utilizou uma rota punt para modificar
o nome do autor que também estava numa rei e a gente usou uma rota com o método delete para excluir um autor do Arreio e nós também produzimos um outro vídeo em que a gente fazia é uma consulta do determinado autor noar rei e também listar todos os autores do Arreio só que isso é nas simulações né a gente tava colocando dados em memória colocando dados em uma Rei mas o que a gente precisa de fato aqui é conectar no banco de dados esses dados estão lá persistência que a gente possa consultar incluir alterar excluir
enfim o que a gente precisa fazer aqui esse curso a isso acessar o banco de dados certo eu imagino que você tenha aí Alguns conhecimentos e bancos como por exemplo relacionamentos tabelas Chaves primárias Chaves estrangeiras e também fazer algumas operações básicas no banco de dados como fazer um selec como fazer um cerco Vamos fazer um update Vamos fazer um delito Então a gente vai precisar desses conceitos para que a gente possa continuar andando aqui bem no nosso curso certo eu tenho aqui na plataforma um conjunto de vídeos sobre mais ql desde o select até update
de Elite outras coisas e também tem um outro curso de banco de dados que fala mais sobre modelagem sobre tabelas sobre relacionamento sobre normalização então vou deixar tudo aqui e se você não conhece bem esse assunto eu sugiro mais uma vez fortemente que você pare esse vídeo e vai dar uma olhadinha nesses outros vídeos beleza aí olha só para a gente fazer os nossos acessos aqui nós vamos utilizar servidor mais que ele tá eu não vou mostrar como é que a gente instala o mais que ele aqui mas eu vou deixar também aqui na descrição
do vídeo um vídeo que eu produzi mostrando como é que a gente vai fazer essa instalação tá nós vamos utilizar aqui um freio morto chamado champ que ele vai dar o suporte básico para que a gente possa acessar um banco de dados que a gente possa manipular os dados em nosso banco de dados Tá certo então se você não tem ainda um servidor mais que era instalado no seu computador para aqui um pouquinho esse vídeo instala o SQL Se você não souber assiste ao vídeo e ver como é que faz essa instalação beleza uma vez
que o Jump foi instalado que já tá instalado aqui na minha máquina primeira coisa que eu vou fazer vai ser inicializar o servidor mais quero então vou procurar aqui pelo Champ esse cara aqui tá e eu vou inicializar o Apache tá porque eu vou utilizar uma ideia chamada PHP made mim que ela foi construída em PHP roda sobre um servidor web e o servidor que a gente utiliza aqui é o Apache e eu vou startar também o serviço do mais ql que a porta padrão dele é o 3306 então eu já tô com o SQL
rodando o serviço mais que ele rodando já tô com a parte rodando que é o servidor web vou clicar aqui nesse botão HDMI ele vai abrir o PHP made mim tá rodando sobre o PHP nesse servidor Apache Então essa daqui é interface PH de mim existem outras ideais como por exemplo mais Kelly workbach que é muito boa então assim eu fiz alguns testes com máquinas pouco robustas utilizando o mais Kelly work Band e aí essas máquinas sofreram um pouquinho rodando essa ideia então por causa disso eu optei utilizar o PHP mais de mim mas você
pode ficar à vontade para utilizar qualquer IDR a ideia que você vai utilizar É o menos importante aqui para gente tá certo Então olha só nós temos aqui eu já tenho um script de banco de dados que ele vai a gente vai restaurar esse script ele vai criar todo o nosso banco de dados com dados com tabelas com relacionamentos com tudo e a gente vai começar a manipular esses dados certo então esse o script desse banco de dados eu também vou deixar aqui na descrição do vídeo então vou clicar aqui importar para fazer importação desse
arquivo de script Deixa eu ver se eu tenho pronto aqui então o arquivo esse camarada aqui ó pabd biblioteca então Abrir eu vou mandar ele importar uma vez finalizado a importação veja que ele criou aqui ó o banco de biblioteca e aqui ele tem várias tabelas inclusive uma tabela é a tabela tb autor se eu vier aqui nessa SQL e digitar select asterisco from tb autor eu vou ver quais são os campos Quais são os dados que tem aí armazenado nessa tabela então Opa tá ele tá dizendo que eu não escolhi nenhum banco de dados
né então vou clicar aqui em biblioteca tá e vou mandar novamente consultar pelo banco pela tabela tb alto select delton Então os dados que eu tenho na tabela autor são esses daqui certo são 11 autores cadastrados eu tenho o ID do autor o nome do autor e a nacionalidade então por exemplo um é Brasileiro Dois americano e três deixa eu ver aqui suíço certo Então essa daqui é a tabela autor que a gente vai utilizar ela daqui a pouco eu vou voltar lá para o visual Studio code para a gente dar continuidade aos nossos códigos
aqui então vamos nessa antes e mais nada eu vou fazer a instalação do módulo mais que é para que eu possa utilizá-lo aqui nas minhas rotinas tá só lembrando que eu posso fazer a instalação por aqui mesmo né se você não conseguiu chegar aqui eu venho aqui em terminar o novo terminal certo ele vai abrir isso aqui para mim então npm install menos menos save my SQL que a gente vai fazer agora é criar uma pasta dentro do projeto biblioteca que nós vamos chamar essa pasta de úteis Então vou criar aqui essa pasta aqui biblioteca
vou criar ela aqui detalhe que ela ficou dentro da pasta rotas né da pasta Roots eu vou clicar nela aqui vou arrastar para cá que aí que ela fique dentro biblioteca não saiu ainda vamos lá fazer para cá mover Então tá aqui certo a pasta outros ela tá dentro da pasta biblioteca certo então são nossos pastinhas são essas aqui para fechar pronto então tá aqui dentro dessa pasta eu vou criar um arquivo que eu vou chamar esse arquivo de DB ponto JS certo nesse arquivo db.js nós vamos criar os comandos para que a gente possa
acessar aí o nosso servidor de banco de dados Então a primeira coisa aqui que eu vou fazer é eu vou criar uma constante chamada +ql lembrando né que uma variável é um pequeno espaço menor em que são armazenados valores temporariamente e esses valores eles são modificados né eles variam a constante não né A constante é um pequeno espaço que é armazenar na memória porém o valor que está lá uma vez definida ele não vai ser modificado certo então nessa variável nessa constante mais Kelly nós vamos jogar o quê o que tá vindo lá de mais
que é que a gente acabou de instalar tá nós instalamos o módulo do mais ql para o node nós não instalamos o servidor mais Quel sendo mais que ele já tá instalado na minha máquina vocês vão fazer isso também quando vocês não é forem começar a fazer essas rotinas aqui então nós vamos criar aqui uma outra constante chamada DB e nessa constante nós vamos pegar esse essa constante Mais ql na verdade é um objeto né a gente vai chamar esse método aqui ó que Connection tá E nesse método nós vamos aí informar Quais são os
parâmetros de acesso ao nosso banco de dados primeiro delas é o nome do servidor no nosso caso aqui né é o local host você tiver trabalhando em rede você vai colocar aí o endereço IP do seu servidor de rede o seu servidor de banco de dados tá nós vamos dizer qual o usuário que vai acessar esse banco de dados detalhe gente eu tô utilizando aqui usuário de do champ quando a gente instala o champ ele utiliza usuário o super usuário do mais ql que é o root certo então com o root você pode fazer o
que você mais dando seus servidor inclusive dá um drop da cabeça certo então nós vamos utilizar essa configuração padrão evidentemente que sim você estivesse em uma aplicação real você não ia utilizar o usuário root você teria um usuário específico para sua aplicação ou para usuário que vai acessar aquele banco de dados para poder fazer essa chamada você De forma alguma ia colocar o usuário Rute para fazer essa chamada certo então como a gente tá aqui no momento de laboratório de experiência vou colocar usar o usuário padrão certo e aí nós temos também aqui que informar
qual é a senha de acesso ao banco de dados por padrão quando você instalar o mais que ele por meio do champ que é o que nós fizemos aqui e o que você talvez tenha feito aí no seu computador a senha de fogo do usuário root no champ é em branco você veja como é extremamente vulnerável né é usuário o super usuário mais Kelly que é o Rute ele vem com a 100 Branca então no mundo real obviamente que a gente não faria isso né é a porta que a gente vai precisar acessar Qual é
a porta de fundo mais que l3306 a gente viu lá né quando a gente conectou no chão porque essa era a porta que ele tava utilizando eu vou dizer qual o nome do meu banco de dados e aí a gente viu lá que o nome do banco de dados é dblioteca certo e uma outra coisa aqui tem um outro parâmetro que é o Multi multipo statements O que é isso você poder rodar vários comandos ao mesmo tempo né uma sequência de comando então eu posso fazer por exemplo incerto um update depois fazer um selec certo
ou fazer um certo e querer recuperar o ID daquele certo que eu fiz então para eu eu vou dizer que esse parâmetro aí ele é true ou seja o a minha conexão permite que isso seja feito tá certo e agora nós temos aqui essa constante DB nós vamos fazer o seguinte ó aqui são os parâmetros de acesso ao banco de dados nós vamos agora efetivamente implementar a forma de conexão que é por meio desse método Connect certo e esse cara aqui esse método Connect o que é que pode acontecer né quando a gente tentar acessar
o servidor pode ser que ele Produza um erro né pessoal isso é bastante possível de acontecer se for se acontecer um erro então eu vou fazer o seguinte ó Nessa função aqui eu vou dizer olha se aparecer um erro você vai fazer o seguinte camarada você vai fazer um frol desse erro que é o que ele vai arremessar o erro para as camadas de cima então nós lançaram nós vamos arremessar esse erro Aí tá certo se não acontecer um erro obviamente que não vai entrar aqui aí eu quero que ele escreva só para a gente
ter noção de que deu certo isso daqui ó quero que eu escreva lá no na nossa nosso console é conectado ao banco de dados certo vou estar dizendo para gente que conseguiu fazer o acesso aí ao banco de dados aqui nós vamos finalizando esse esse método Connect esse cara Fecha aqui pronto certo e aqui nós vamos ter que fazer também o seguinte nós temos essa essa constante beber certo mas eu quero que ela se torne Global né para que a aplicação consiga ter acesso a ele então tô criando aqui essa constante DB com escopo global
que vai receber o que o que tá vindo essa constante local aqui DB e depois o que é que eu faço eu vou exportar né essa constante Bebê vou salvar aqui certo e vamos fazer um teste aqui né vamos ver se ele consegue conectar no nosso servidor de novidade Então vamos só fazer assim npm start ver se ele vai conseguir conectar errou pessoal precisei dar uma parada aqui para ver o que que eu tinha errado antes de começar essa gravação desse vídeo tá fazendo alguns testes terminei fazendo uma chamada de um arquivo aqui que não
existia Então esse foi o motivo do erro provavelmente não vai acontecer esse erro com você porque o seu código não tá fazendo chamada que eu estava fazendo aqui certo então nós vamos fazer o seguinte ó aqui nesse arquivo index quer que a gente vai fazer nós vamos criar aqui uma uma variável chamada DB certo que nessa variável nós vamos chamar o que tá vindo lá daquilo que a gente acabou de criar o arquivo lá é o arquivo DB ele tá onde gente ele tá dentro da pastinha úteis né aqui a pastinha úteis ele tá aqui
só que tem um detalhe gente a gente precisa esse arquivo index que a gente tá trabalhando aqui ó ele tá dentro de roads É isso mesmo ele precisa sair daqui dessa pasta Roots para chegar até esse arquivo DB que tá nessa pasta útils então que que ele tem que fazer ele vai ter que subir um nível para chegar aqui em biblioteca quando ele chegar aqui ele acessar a pasta outros então vou dizer isso aqui ó ponto ponto ou seja suba um nível então ele sai daqui da pasta rua sobe o nível vai chegar aonde biblioteca
e depois que você chegar a biblioteca acesse quem a pasta outros então eu vou colocar aqui ó uma barrinha certo então é isso que essa chamada tá fazendo aqui beleza então vou salvar aqui e agora eu vou dar um npm start porque ele vai chamar esse camarada lá tá então vejam que ele agora conseguiu conectar com o banco de dados Beleza então o nosso primeiro passo aqui ele ele deu certo quem vai fazer agora é o seguinte a gente vai criar uma rota para poder acessar os dados de um determinada tabela do nosso banco de
dados eu vou escolher aqui a tabela tb autor para fazer essa chamada certo então eu vou lá para baixo tá aqui nesse arquivo index a gente já vinha trabalhando com ele aqui e vou criar uma rota Deixa eu aproveitar aqui fazer um control c control V aqui tá é um control c aqui nessa rota essa rota eu vou chamar elas de autores listar certo nós vamos chamar ela de listar Ok então vai ter aqui essa nossa função de coberta certo e aqui gente é onde vai mudar um pouquinho que a gente vinha trabalhando até então
aqui ó nessa variável DB Ou melhor essa variável é tá aqui né então aqui essa variável DB que nós declaramos lá em cima o que que a gente vai fazer com ela nós vamos chamar aqui um método chamado kelry tá E aqui nós vamos escrever a nossa consulta SQL então ó select asterisco from tb alto certo como nós não estamos passando o parâmetro para essa consulta nós vamos aqui simplesmente abrir e fechar colchetes Tá e agora nós vamos chamar aqui uma outra função que essa função ela tem aí dois parâmetros primeiro parâmetro diz respeito a
casa acontece algum erro certo e o segundo ela vai retornar o que esse comando selec vai retornar que no caso seria uma listagem né então chama ele aqui de simplesmente ele está então eu vou abrir e fechar aqui parênteses para essa função tá E aqui eu posso tirar esse código aqui né daqui e aqui ó dentro dessa função nós vamos fazer o seguinte tá faltando alguma coisa aqui tem um parentese mais né então tirar esse cara aqui pronto então aqui dentro desse desse método dessa função que a gente tá escrevendo nós vamos dizer o seguinte
olha se acontecer algum erro é que você vai fazer você vai fazer um Sandy melhor 10. send de que do erro que apareceu lá na tela para você se não cair no erro então é porque deu certo se deu certo então você vai retornar quem a listagem que foi preenchido aqui então essa essa cor ela é executada se der erro o erro que foi gerado vem para cá se não der erro ou seja se o resultado der certo vai vir para esse outro parâmetro aqui que é o estágio Beleza então eu vou salvar isso daqui
tá reclamando que ninguém isso aqui né tá repetindo esse camarada aqui então eu vou salvar esse cara aqui tá reclamando de que aqui ah tá tem aqui porque na verdade aqui esse cara aqui fecha esse daqui né e eu preciso fechar esse essa rota aqui né eu vou fechar com isso aqui pronto eu acho que era isso então esse camarada aqui tá fechando a função e esse daqui tá fechando a rota né então vou salvar aqui e agora eu vou parar novamente o serviço tá Vou parar aqui o serviço sim e agora eu vou novamente
rodar bem start ele conectou no banco de dados ajuda a fazer o seguinte agora a gente vai lá para o browser e vai chamar essa rota aqui autores está para ver o que é que ele vai retornar para gente certo vamos lá então aqui ó nós temos local host 3 mil e a rota essa daqui ele está certo então Olha só pessoal que foi que ele trouxe para mim ele trouxe um Jason aqui com os campos da minha tabela né o ideal o nome do autoripou e a nacionalidade dele 2 próximo ao autor é o
autor com id2 não Doutor José mandando nacionalidade um brasileiro e assim faz isso para todos os autores lá da minha tabela veja que começa do autor um e vai até o autor 11 como a gente viu aqui né ele começa do autor um e vai até o autor 11 beleza pessoal aqui a gente só fez acessar o banco de dados capturar os dados e mostrar aqui o próximo vídeo que a gente vai fazer a gente vai modificar essa rota para que esses da enviados para um navio e a gente vai fazer lá um join para
trazer os dados mais digamos assim mais interessantes para usuário Por que você disse olha o Tang Pou ele tem nacionalidade 2 eu não tô dizendo nada mas se eu disse ó o Pou ele tem nacionalidade americana já fica mais intuitivo se eu disser que por exemplo o Vladimir ele tem nacionalidade Suíça é mais intuitivo do que a nacionalidade 3 beleza pessoal Então olha só se inscreve no canal ativa as notificações porque toda vez que eu colocar um conteúdo novo canal YouTube vai lembrar você eu fiz isso e também compartilha esse vídeo com seus amigos deixe
seu like para que esse vídeo consiga chegar a quantidade de pessoas é assim que eu consigo medir a temperatura do canal para ver se realmente é interessante ou não fazer conteúdos e postar aqui muito obrigado por sua companhia e por sua parceria e eu espero reencontrar você no próximo vídeo [Música]