Em Go, você pode importar linhas para PostgreSQL de STDIN usando o pacote pq. Aqui está uma solução passo a passo:
import (
"database/sql"
"github.com/lib/pq"
)
db, err := sql.Open("postgres", "dbname=mydb user=myuser password=mypassword")
if err != nil {
log.Fatalf("open: %v", err)
}
txn, err := db.Begin()
if err != nil {
log.Fatalf("begin: %v", err)
}
Use pq.CopyIn() para criar uma instrução preparada.
stmt, err := txn.Prepare(pq.CopyIn("test_table", "column1", "column2", ...))
if err != nil {
log.Fatalf("prepare: %v", err)
}
Itere seus dados e execute stmt.Exec() para cada linha.
for _, row := range rows {
_, err = stmt.Exec(row.Column1, row.Column2, ...)
if err != nil {
log.Fatalf("exec: %v", err)
}
}
_, err = stmt.Exec()
if err != nil {
log.Fatalf("exec: %v", err)
}
stmt.Close()
err = txn.Commit()
if err != nil {
log.Fatalf("commit: %v", err)
}
Este código importará com eficiência linhas de STDIN para sua tabela PostgreSQL.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3