Sobes.tech
Junior — Middle

Como extrair e processar quatro solicitações separadas de uma operação em lote?

sobes.tech IA

Resposta da IA

No Go, se tiver uma operação em lote que contém várias consultas, pode extraí-las e processá-las separadamente, por exemplo, se forem consultas SQL separadas por ponto e vírgula.

Exemplo de processamento de quatro consultas separadas de uma única linha:

package main

import (
    "fmt"
    "strings"
)

func main() {
    batch := `SELECT * FROM users; INSERT INTO logs VALUES ('log1'); UPDATE users SET active=1; DELETE FROM sessions;`

    // Dividir a string pelo caractere ';'
    queries := strings.Split(batch, ";")

    for i, q := range queries {
        q = strings.TrimSpace(q)
        if q == "" {
            continue
        }
        fmt.Printf("Consulta %d: %s\n", i+1, q)
        // Aqui pode processar cada consulta separadamente
    }
}

Se a operação em lote chega na forma de dados estruturados (por exemplo, um array de consultas), basta iterar sobre elas e processar uma por uma.