Olá Flávio!
Pelo que entendi, você está com dúvidas sobre como atribuir os valores às variáveis ao escanear linha a linha no seu código Go. Vou tentar te explicar de uma forma mais clara.
Quando você utiliza a função .Scan()
para escanear os valores do banco de dados, você precisa passar as variáveis nas quais deseja armazenar esses valores. Por exemplo, se você tem uma variável id
do tipo int
, uma variável nome
do tipo string
, uma variável descricao
do tipo string
, uma variável preco
do tipo float64
e uma variável quantidade
do tipo int
, você pode fazer o seguinte:
var id int
var nome string
var descricao string
var preco float64
var quantidade int
erro := db.QueryRow("SELECT * FROM produtos").Scan(&id, &nome, &descricao, &preco, &quantidade)
Dessa forma, cada valor retornado pela consulta SQL será atribuído à sua respectiva variável. Lembre-se de utilizar o operador &
antes de cada variável, para passar o endereço de memória onde o valor será armazenado.
Caso ocorra algum erro durante o escaneamento, o valor da variável erro
será diferente de nil
. Você pode verificar se há erro e tratá-lo da forma que achar mais adequada.
Espero ter ajudado a esclarecer suas dúvidas! Bons estudos!