mirror of
https://github.com/Alexander-D-Karpov/photodock.git
synced 2026-03-16 22:06:35 +03:00
31 lines
467 B
Go
31 lines
467 B
Go
package database
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/jackc/pgx/v5/pgxpool"
|
|
)
|
|
|
|
type DB struct {
|
|
pool *pgxpool.Pool
|
|
}
|
|
|
|
func New(connString string) (*DB, error) {
|
|
pool, err := pgxpool.New(context.Background(), connString)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if err := pool.Ping(context.Background()); err != nil {
|
|
return nil, err
|
|
}
|
|
return &DB{pool: pool}, nil
|
|
}
|
|
|
|
func (db *DB) Close() {
|
|
db.pool.Close()
|
|
}
|
|
|
|
func (db *DB) Pool() *pgxpool.Pool {
|
|
return db.pool
|
|
}
|