sqlx

package module
v0.3.10 Latest Latest
Warning

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

Go to latest
Published: Mar 21, 2024 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func WithIsolationLevel

func WithIsolationLevel(level int) oniontx.Option[*sql.TxOptions]

WithIsolationLevel set sql.TxOptions isolation level.

Look at sql.TxOptions.Isolation.

func WithReadOnly

func WithReadOnly(readonly bool) oniontx.Option[*sql.TxOptions]

WithReadOnly set `ReadOnly` sql.TxOptions option.

Look at sql.TxOptions.ReadOnly.

Types

type Executor

type Executor interface {
	Exec(query string, args ...any) (sql.Result, error)
	ExecContext(ctx context.Context, query string, args ...any) (sql.Result, error)
	Query(query string, args ...any) (*sql.Rows, error)
	QueryContext(ctx context.Context, query string, args ...any) (*sql.Rows, error)
	QueryRow(query string, args ...any) *sql.Row
	QueryRowContext(ctx context.Context, query string, args ...any) *sql.Row
	Prepare(query string) (*sql.Stmt, error)
	PrepareContext(ctx context.Context, query string) (*sql.Stmt, error)
}

Executor represents common methods of sqlx.DB and sqlx.Tx.

type Transactor

type Transactor struct {
	*oniontx.Transactor[*dbWrapper, *txWrapper, *sql.TxOptions]
}

Transactor manage a transaction for single [pgx.Conn] instance.

func NewTransactor

func NewTransactor(db *sqlx.DB) *Transactor

NewTransactor returns new Transactor (sqlx implementation).

func (*Transactor) GetExecutor

func (t *Transactor) GetExecutor(ctx context.Context) Executor

GetExecutor returns Executor implementation (*sqlx.DB or *sqlx.Tx default wrappers).

func (*Transactor) TryGetTx

func (t *Transactor) TryGetTx(ctx context.Context) (*sqlx.Tx, bool)

TryGetTx returns pointer of sqlx.Tx and "true" from context.Context or return `false`.

func (*Transactor) TxBeginner

func (t *Transactor) TxBeginner() *sqlx.DB

TxBeginner returns pointer of sqlx.DB.

type TxOption

type TxOption func(opt *sql.TxOptions)

TxOption implements oniontx.Option.

func (TxOption) Apply

func (o TxOption) Apply(opt *sql.TxOptions)

Apply the TxOption to sql.TxOptions.

Jump to

Keyboard shortcuts

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