Documentation
¶
Overview ¶
Package pgxext provides pgx/v5 helpers.
Index ¶
- func CollectOneRow[T any](rows pgx.Rows) (*T, error)
- func CollectRows[T any](rows pgx.Rows) ([]*T, error)
- func IsPostgresError(err error) (*pgconn.PgError, bool)
- type Config
- func (config *Config) WithAfterConnect(fn func(context.Context, *pgx.Conn) error) *Config
- func (config *Config) WithAfterRelease(fn func(*pgx.Conn) bool) *Config
- func (config *Config) WithApplicationName(name string) *Config
- func (config *Config) WithBeforeAcquire(fn func(context.Context, *pgx.Conn) bool) *Configdeprecated
- func (config *Config) WithBeforeClose(fn func(*pgx.Conn)) *Config
- func (config *Config) WithBeforeConnect(fn func(context.Context, *pgx.ConnConfig) error) *Config
- func (config *Config) WithConnectTimeout(timeout time.Duration) *Config
- func (config *Config) WithDatabase(database string) *Config
- func (config *Config) WithDialFunc(fn pgconn.DialFunc) *Config
- func (config *Config) WithHealthCheckPeriod(d time.Duration) *Config
- func (config *Config) WithHost(host string) *Config
- func (config *Config) WithLookupFunc(fn pgconn.LookupFunc) *Config
- func (config *Config) WithMaxConnIdleTime(d time.Duration) *Config
- func (config *Config) WithMaxConnLifetime(d time.Duration) *Config
- func (config *Config) WithMaxConns(n int32) *Config
- func (config *Config) WithMinConns(n int32) *Config
- func (config *Config) WithOnNotice(fn pgconn.NoticeHandler) *Config
- func (config *Config) WithOnNotification(fn pgconn.NotificationHandler) *Config
- func (config *Config) WithOnPgError(fn pgconn.PgErrorHandler) *Config
- func (config *Config) WithPassword(password string) *Config
- func (config *Config) WithPort(port uint16) *Config
- func (config *Config) WithPrepareConn(fn func(context.Context, *pgx.Conn) (bool, error)) *Config
- func (config *Config) WithSSLClientCert(certFile, keyFile, password string) (*Config, error)
- func (config *Config) WithSSLMode(mode string) *Config
- func (config *Config) WithSSLRootCert(rootCertFile string) (*Config, error)
- func (config *Config) WithSearchPath(path string) *Config
- func (config *Config) WithShouldPing(fn func(context.Context, pgxpool.ShouldPingParams) bool) *Config
- func (config *Config) WithTimezone(tz string) *Config
- func (config *Config) WithURL(rawURL string) (*Config, error)
- func (config *Config) WithUser(user string) *Config
- func (config *Config) WithValidateConnect(fn pgconn.ValidateConnectFunc) *Config
- type DataSource
- func (ds *DataSource) Exec(ctx context.Context, sql string, args ...interface{}) (pgconn.CommandTag, error)
- func (ds *DataSource) NewBatch() *pgx.Batch
- func (ds *DataSource) NewCustomTransaction(ctx context.Context, options pgx.TxOptions) (pgx.Tx, error)
- func (ds *DataSource) NewTransaction(ctx context.Context) (pgx.Tx, error)
- func (ds *DataSource) Query(ctx context.Context, sql string, args ...any) (pgx.Rows, error)
- func (ds *DataSource) QueryRow(ctx context.Context, sql string, args ...any) (pgx.Row, error)
- func (ds *DataSource) SendBatch(ctx context.Context, batch *pgx.Batch) (pgx.BatchResults, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CollectOneRow ¶
CollectOneRow scans one row into *T.
func CollectRows ¶
CollectRows scans rows into []*T.
Types ¶
type Config ¶
Config wraps pgxpool.Config.
func (*Config) WithAfterConnect ¶
WithAfterConnect sets AfterConnect.
func (*Config) WithAfterRelease ¶
WithAfterRelease sets AfterRelease.
func (*Config) WithApplicationName ¶
WithApplicationName sets application_name.
func (*Config) WithBeforeClose ¶
WithBeforeClose sets BeforeClose.
func (*Config) WithBeforeConnect ¶
WithBeforeConnect sets BeforeConnect.
func (*Config) WithConnectTimeout ¶
WithConnectTimeout sets the connect timeout.
func (*Config) WithDatabase ¶
WithDatabase sets the database.
func (*Config) WithDialFunc ¶
WithDialFunc sets DialFunc.
func (*Config) WithHealthCheckPeriod ¶
WithHealthCheckPeriod sets HealthCheckPeriod.
func (*Config) WithLookupFunc ¶
func (config *Config) WithLookupFunc(fn pgconn.LookupFunc) *Config
WithLookupFunc sets LookupFunc.
func (*Config) WithMaxConnIdleTime ¶
WithMaxConnIdleTime sets MaxConnIdleTime.
func (*Config) WithMaxConnLifetime ¶
WithMaxConnLifetime sets MaxConnLifetime.
func (*Config) WithMaxConns ¶
WithMaxConns sets MaxConns.
func (*Config) WithMinConns ¶
WithMinConns sets MinConns.
func (*Config) WithOnNotice ¶
func (config *Config) WithOnNotice(fn pgconn.NoticeHandler) *Config
WithOnNotice sets OnNotice.
func (*Config) WithOnNotification ¶
func (config *Config) WithOnNotification(fn pgconn.NotificationHandler) *Config
WithOnNotification sets OnNotification.
func (*Config) WithOnPgError ¶
func (config *Config) WithOnPgError(fn pgconn.PgErrorHandler) *Config
WithOnPgError sets OnPgError.
func (*Config) WithPassword ¶
WithPassword sets the password.
func (*Config) WithPrepareConn ¶
WithPrepareConn sets PrepareConn.
func (*Config) WithSSLClientCert ¶
WithSSLClientCert loads a client certificate.
func (*Config) WithSSLMode ¶
WithSSLMode sets the PostgreSQL sslmode.
func (*Config) WithSSLRootCert ¶
WithSSLRootCert loads a root certificate.
func (*Config) WithSearchPath ¶
WithSearchPath sets search_path.
func (*Config) WithShouldPing ¶
func (config *Config) WithShouldPing(fn func(context.Context, pgxpool.ShouldPingParams) bool) *Config
WithShouldPing sets ShouldPing.
func (*Config) WithTimezone ¶
WithTimezone sets TimeZone.
func (*Config) WithValidateConnect ¶
func (config *Config) WithValidateConnect(fn pgconn.ValidateConnectFunc) *Config
WithValidateConnect sets ValidateConnect.
type DataSource ¶
DataSource wraps a pgxpool.Pool.
func NewDataSource ¶
func NewDataSource(ctx context.Context, config *Config) (ds *DataSource, err error)
NewDataSource opens a connection pool.
func (*DataSource) Exec ¶
func (ds *DataSource) Exec(ctx context.Context, sql string, args ...interface{}) (pgconn.CommandTag, error)
Exec runs a SQL statement.
func (*DataSource) NewBatch ¶
func (ds *DataSource) NewBatch() *pgx.Batch
NewBatch returns an empty batch.
func (*DataSource) NewCustomTransaction ¶
func (ds *DataSource) NewCustomTransaction(ctx context.Context, options pgx.TxOptions) (pgx.Tx, error)
NewCustomTransaction starts a transaction with options.
func (*DataSource) NewTransaction ¶
NewTransaction starts a transaction.
func (*DataSource) SendBatch ¶
func (ds *DataSource) SendBatch(ctx context.Context, batch *pgx.Batch) (pgx.BatchResults, error)
SendBatch sends a batch.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package database provides PostgreSQL database-level object builders.
|
Package database provides PostgreSQL database-level object builders. |
|
Package migration provides SQL migrations.
|
Package migration provides SQL migrations. |
|
Package notification provides PostgreSQL LISTEN/NOTIFY helpers.
|
Package notification provides PostgreSQL LISTEN/NOTIFY helpers. |
|
Package repository provides a generic PostgreSQL query builder.
|
Package repository provides a generic PostgreSQL query builder. |