Added database package

This commit is contained in:
2025-10-21 13:26:50 +02:00
parent e97a13d1e8
commit bc1b0ff731

43
database/connect.go Normal file
View File

@@ -0,0 +1,43 @@
package database
import (
"context"
"errors"
"github.com/jackc/pgx/v5/pgconn"
"github.com/jackc/pgx/v5/pgxpool"
)
func Connect(connStr string) (*pgxpool.Pool, error) {
pool, err := pgxpool.New(context.Background(), connStr)
if err != nil {
return nil, err
}
return pool, nil
}
func IsDuplicatedRow(err error) error {
var pgErr *pgconn.PgError
if errors.As(err, &pgErr) && pgErr.Code == "23505" {
return errors.New("duplicated row found")
}
return nil
}
// FIXME get an idea how this func should work
// func NoRowsInQuerySet(err error) error {
// var pgErr *pgconn.PgError
// if errors.As(err, &pgErr) {
// fmt.Println("pgerr:", pgErr.Code)
// return errors.New("no rows selected")
// }
// // if err == pgconn. {
// // fmt.Println("No rows were found.")
// // }
// return nil
// }