Aula 03 – Golang – Fiber – Banco de Dados MySQL
Aula 03 – Golang – Fiber – Banco de Dados MySQL
Voltar para página principal do blog
Todas as aulas desse curso
Aula 02 Aula 04
Se gostarem do conteúdo dêem um joinha 👍 na página do Código Fluente no
Facebook
Sigam o Código Fluente no Instagram e no TikTok.
Link para a Digital Innovation
Quer aprender python3 de graça e com certificado? Acesse então:
workover
Meus link de afiliados:
Hostinger
Digital Ocean
One.com
Código da aula: Github
Melhore seu NETWORKING
Participe de comunidades de desenvolvedores:
Fiquem a vontade para me adicionar ao linkedin.
E também para me seguir no GITHUB.
PIX para doações
Aula 03 – Golang – Fiber – Banco de Dados MySQL
Nessa aula iremos criar o banco de dados e conectar usando gorm.
Se você não tiver o mysql instalado no seu sistema, instale o mysql workbench, segue o link:
https://dev.mysql.com/downloads/workbench/
Depois de instalado, crie um esquema para ser usado no app.
Execute o seguinte comando SQL, ou clique no icone parecido com um barril na interface gráfica do mysql workbench.
CREATE SCHEMA `fluent_admin`;
Criamos com o comando acima, o esquema chamado go_admin.
Instalação do Gorm
Agora vamos instalar o gorm no projeto.
Ele vai nos ajudar na conexão com o MySQL.
Para instalar, execute:
go get -u gorm.io/gorm
Agora instale o driver do mysql.
go get -u gorm.io/driver/mysql
Em Go não temos try catch, e as funções podem retornar múltiplos valores.
Esse recurso é explorado em Go para tratar eventuais erros, por exemplo, o banco de dados pode tá fora do ar, e aí então uma função responsável por conectar ao banco vai retornar um erro na variável err, ao invés de conexão bem sucedida.
Nesse caso a variável db vai ter o valor nil e err tem um valor diferente de nil.
Caso o banco esteja disponível e o app conecte sem problema, será o contrário, err vai ter nil e db um valor diferente de nil, na verdade um ponteiro.
Ou seja, err sempre vai receber um valor, ou nil ou um valor diferente de nil.
É por isso que temos ele na função Get:
app.Get(“/”, func(c *fiber.Ctx) error { …
Na string de conexão com o banco temos:
O user em lilás, o password em vermelho e o banco em verde.
Agora altere o src/main.go para ficar assim:
fiber-project/src/main.go
package main
import (
"fmt"
"github.com/gofiber/fiber/v2"
"gorm.io/driver/mysql"
"gorm.io/gorm"
)
func main() {
var dsn = "root:mysql1234@/fluent_admin?charset=utf8mb4&parseTime=True&loc=Local"
var v = "Não conseguiu conectar ao banco de dados"
db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
if err != nil {
panic(v)
}
fmt.Println("conexão OK!")
fmt.Println(db)
app := fiber.New()
app.Get("/", home)
app.Listen(":3000")
}
func home(c *fiber.Ctx) error {
return c.SendString("Hello, World 👋!")
}
E para testar se conectou ao banco sem problema, execute:
go run main.go
Saída de sucesso será algo tipo:
Conexão OK!
&{0xc00029a2d0 0 0xc00035c000 1}
Ou se não consegui conectar ao banco mostrará a mensagem de erro:
Não conseguiu conectar ao banco de dados
Por agora é só, nos vemos na próxima, até lá!
Código da aula: Github
Voltar para página principal do blog
Todas as aulas desse curso
Aula 02 Aula 04
Se gostarem do conteúdo dêem um joinha 👍 na página do Código Fluente no
Facebook
Link do código fluente no Pinterest
Novamente deixo meus link de afiliados:
Hostinger
Digital Ocean
One.com
Obrigado, até a próxima e bons estudos. 😉