package main
import (
"context"
"fmt"
"os"
"github.com/jackc/pgx/v5/pgxpool"
)
func main() {
// Connection string automatically injected by Suga
pool, err := pgxpool.New(context.Background(), os.Getenv("DATABASE_URL"))
if err != nil {
panic(err)
}
defer pool.Close()
// Query with parameters
rows, err := pool.Query(context.Background(),
"SELECT * FROM users WHERE active = $1", true)
if err != nil {
panic(err)
}
defer rows.Close()
// Insert data
_, err = pool.Exec(context.Background(),
"INSERT INTO users (name, email) VALUES ($1, $2)",
"Alice", "alice@example.com")
// Update data
_, err = pool.Exec(context.Background(),
"UPDATE users SET name = $1 WHERE id = $2",
"Bob", 1)
// Delete data
_, err = pool.Exec(context.Background(),
"DELETE FROM users WHERE id = $1", 1)
}