db

package
v4.22.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 27, 2021 License: MIT Imports: 9 Imported by: 7

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrNoHost occurs when host is not provided in configuration
	ErrNoHost = errors.New("no host for database connection")

	// ErrNoTransaction occurs when no transaction is provided but needed
	ErrNoTransaction = errors.New("no transaction in context, please wrap with DoAtomic()")

	// ErrBulkEnded occurs when bulk creation is over
	ErrBulkEnded = errors.New("no more data to copy")

	// SQLTimeout when running queries
	SQLTimeout = time.Second * 5
)

Functions

func StoreTx

func StoreTx(ctx context.Context, tx *sql.Tx) context.Context

StoreTx stores given transaction in context

Types

type App added in v4.14.0

type App struct {
	// contains filtered or unexported fields
}

App of package

func New

func New(config Config) (App, error)

New creates new App from Config

func NewFromSQL added in v4.14.2

func NewFromSQL(db *sql.DB) App

NewFromSQL creates a db wrapper

func (App) Bulk added in v4.14.0

func (a App) Bulk(ctx context.Context, feeder func(*sql.Stmt) error, schema, table string, columns ...string) (err error)

Bulk load data into schema and table by batch

func (App) Close added in v4.14.1

func (a App) Close() error

Close the database connection

func (App) Create added in v4.14.0

func (a App) Create(ctx context.Context, query string, args ...interface{}) (uint64, error)

Create execute query with a RETURNING id

func (App) DoAtomic added in v4.14.0

func (a App) DoAtomic(ctx context.Context, action func(context.Context) error) (err error)

DoAtomic execute given action in a transactionnal context

func (App) Enabled added in v4.20.0

func (a App) Enabled() bool

Enabled check if sql.DB is provided

func (App) Exec added in v4.14.0

func (a App) Exec(ctx context.Context, query string, args ...interface{}) error

Exec execute query with specified timeout, disregarding result

func (App) Get added in v4.14.0

func (a App) Get(ctx context.Context, scanner func(*sql.Row) error, query string, args ...interface{}) error

Get execute single row query

func (App) List added in v4.14.0

func (a App) List(ctx context.Context, scanner func(*sql.Rows) error, query string, args ...interface{}) (err error)

List execute multiple rows query

func (App) Ping added in v4.14.0

func (a App) Ping() error

Ping indicate if database is ready or not

type Config

type Config struct {
	// contains filtered or unexported fields
}

Config of package

func Flags

func Flags(fs *flag.FlagSet, prefix string, overrides ...flags.Override) Config

Flags adds flags for configuring package

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL