Aula 34
Começo da Consulta de MySQL SELECT ... FROM em Golang
Nesta aula escrevemos a consulta para selecionar todos os livros. Usamos a função db.Query
para realizar a consulta.
Summary
# Resumo da Aula sobre Implementação de API para Listagem de Livros
## Introdução
- O retorno da aula se concentra na continuidade da implementação da API destinada ao sistema JSM.
- O objetivo é implementar a listagem de livros conectando-se a um banco de dados, em vez de utilizar dados em memória.
## Passos da Implementação
1. **Conexão com o Banco de Dados**:
- O objeto `DB` já foi estabelecido para se conectar ao banco de dados anteriormente.
2. **Consulta aos Livros**:
- Para listar os livros, será utilizada a query SQL: `SELECT ID, autor, título FROM Livros`.
- A função `query` do `DB` é invocada para realizar a consulta.
3. **Tratamento de Resultados**:
- A query retorna duas informações:
- Um ponteiro para os `rows` (resultados/linhas).
- Um `error` (erro).
4. **Verificação de Erros**:
- Antes de proceder com os resultados, é importante verificar se ocorreu algum erro na execução da query.
- Se houver um erro (`error != nil`), o código de status retornado será um "Internal Server Error" (500).
- Caso contrário, a requisição será tratada adequadamente.
## Conclusão
- A aula destacou a importância de gerenciar corretamente a consulta ao banco de dados e a necessidade de tratar potenciais erros na implementação da API.
Video Transcript
Pessoal, estamos de volta com mais uma aula de golã.
Vamos continuar a implementação da nossa API que serve JSM.
Vamos fazer a implementação do listado de livros,
com a conexão à bancadidade, e pegar os dados da tabela Livros,
em vez da parte de listas que a gente criou aqui na memória.
Então vamos lá.
Primeiro a gente vai fazer consulta.
Já temos um objeto chamado DB,
e já foi conectado antes de bater nas outras lá.
Vamos lá.
DB.Qual vai ser o método para poder fazer uma consulta?
Select Asterisco from Livros.
Vamos usar o query.
Vamos dar aqui qual é a query.
Vai ser Select.
Quais são as colunas que querem selecionar?
Deixa eu mandar meu teclado.
Select.
ID, o autor e o título.
From.
Qual é o nome da tabela Livros?
Certo, então as colunas são ID, autor e título.
Como a gente já tinha aqui nessa estrutura Livro.
Bem,
com isso essa query retorna duas coisas.
Vamos confirmar.
Na documentação, vou procurar por query.
Agora, se eu for lá em cima de volta,
no índice query vai ser um método do DB,
tipo DB.
Tipo DB.Qquery.
Query retorna duas coisas.
Primeiro, um ponteiro para rows, registros ou linhas.
E o segundo é o error.
Erro.
Então, vamos lá.
Voltando aqui.
Primeiro, vai ser rows, registros ou resultados.
Erro de select, sei lá, dois pontos igual.
Bem, vamos primeiro checar se não teve nenhum erro?
Se o erro select não for new, isso é, houve um erro.
Se não tiver erro, o erro select vai ser new.
Vamos fazer o quê?
Bem, aqui é, tenho que pensar porque o usuário vai fazer
uma requisição HTTP e esse problema for,
der problema nessa query.
Aí o problema é do servidor, na verdade.
Então, vamos dar talvez um internal server error.
É o status de código 500, não me engano.
Nenhum comentário ainda (loading...)
Nenhum comentário ainda (loading...)
Gostou da aula? 😆👍
Apoie nosso trabalho com uma doação: