commit eb6f7c99f558fef625e5d6b1f4e20c36f3c8d87c Author: 3fili3 Date: Sat Aug 23 23:10:53 2025 -0600 first commit diff --git a/cmd/main.go b/cmd/main.go new file mode 100644 index 0000000..7df727c --- /dev/null +++ b/cmd/main.go @@ -0,0 +1,61 @@ +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) + } + +} diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..2b8fc8f --- /dev/null +++ b/go.mod @@ -0,0 +1,11 @@ +module gitea.codeathome.ovh/3fili3/go-1 + +go 1.25.0 + +require ( + github.com/jackc/pgpassfile v1.0.0 // indirect + github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 // indirect + github.com/jackc/pgx/v5 v5.7.5 // indirect + golang.org/x/crypto v0.37.0 // indirect + golang.org/x/text v0.24.0 // indirect +) diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..cf80cad --- /dev/null +++ b/go.sum @@ -0,0 +1,17 @@ +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/jackc/pgpassfile v1.0.0 h1:/6Hmqy13Ss2zCq62VdNG8tM1wchn8zjSGOBJ6icpsIM= +github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg= +github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 h1:iCEnooe7UlwOQYpKFhBabPMi4aNAfoODPEFNiAnClxo= +github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761/go.mod h1:5TJZWKEWniPve33vlWYSoGYefn3gLQRzjfDlhSJ9ZKM= +github.com/jackc/pgx/v5 v5.7.5 h1:JHGfMnQY+IEtGM63d+NGMjoRpysB2JBwDr5fsngwmJs= +github.com/jackc/pgx/v5 v5.7.5/go.mod h1:aruU7o91Tc2q2cFp5h4uP3f6ztExVpyVv88Xl/8Vl8M= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +golang.org/x/crypto v0.37.0 h1:kJNSjF/Xp7kU0iB2Z+9viTPMW4EqqsrywMXLJOOsXSE= +golang.org/x/crypto v0.37.0/go.mod h1:vg+k43peMZ0pUMhYmVAWysMK35e6ioLh3wB8ZCAfbVc= +golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0= +golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=