62 lines
1.1 KiB
Go
62 lines
1.1 KiB
Go
package main
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
"log"
|
|
|
|
"github.com/jackc/pgx/v5"
|
|
)
|
|
|
|
func main() {
|
|
|
|
databaseURL := "postgres://admin:Admin12345@10.8.0.1:5432/prueba_rust"
|
|
|
|
conn, err := pgx.Connect(context.Background(), databaseURL)
|
|
|
|
if err != nil {
|
|
panic("No se pudo conectar con la base de datos: " + err.Error())
|
|
}
|
|
|
|
defer conn.Close(context.Background())
|
|
|
|
fmt.Println("✅ Conexión exitosa a PostgreSQL")
|
|
|
|
rows, err := conn.Query(context.Background(), "select * from \"Zonas\"")
|
|
|
|
if err != nil {
|
|
panic(err.Error())
|
|
}
|
|
|
|
type Zonas struct {
|
|
PkZona int `json:"pk_zona"`
|
|
Nombre string `json:"nombre"`
|
|
}
|
|
|
|
var zonas []Zonas
|
|
|
|
if rows.Err() != nil {
|
|
panic(rows.Err().Error())
|
|
}
|
|
|
|
for rows.Next() {
|
|
var z Zonas
|
|
err = rows.Scan(&z.PkZona, &z.Nombre)
|
|
if err != nil {
|
|
panic(err.Error())
|
|
}
|
|
zonas = append(zonas, z)
|
|
}
|
|
|
|
// Verificar si hubo errores durante la iteración
|
|
if rows.Err() != nil {
|
|
log.Fatalf("❌ Error en el iterador: %v", rows.Err())
|
|
}
|
|
|
|
// Mostrar resultados
|
|
for _, z := range zonas {
|
|
log.Println("ID: " + string(z.PkZona) + " | Nombre: " + z.Nombre)
|
|
}
|
|
|
|
}
|