Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BatchResults ¶ added in v0.3.0
type BatchResults interface {
// Query returns the rows for the next queued query.
Query() (Rows, error)
// Close releases the batch results.
Close() error
}
BatchResults yields the result rows for each queued query, in order.
type Driver ¶
type Driver interface {
QueryRow(ctx context.Context, sql string, args ...any) Row
Query(ctx context.Context, sql string, args ...any) (Rows, error)
Exec(ctx context.Context, sql string, args ...any) (int64, error)
Begin(ctx context.Context) (Tx, error)
BeginTx(ctx context.Context, opts TxOptions) (Tx, error)
Close()
}
Driver abstracts database access for the drel engine.
type IsolationLevel ¶
type IsolationLevel int
IsolationLevel represents a transaction isolation level.
const ( IsoDefault IsolationLevel = iota IsoReadCommitted IsoRepeatableRead IsoSerializable )
type Pipeliner ¶ added in v0.3.0
type Pipeliner interface {
SendBatch(ctx context.Context, items []BatchItem) (BatchResults, error)
}
Pipeliner is an optional Driver capability: sending multiple queries in a single network round-trip (e.g. the pgx pipeline). Drivers that do not implement it fall back to sequential execution.
type Tx ¶
type Tx interface {
QueryRow(ctx context.Context, sql string, args ...any) Row
Query(ctx context.Context, sql string, args ...any) (Rows, error)
Exec(ctx context.Context, sql string, args ...any) (int64, error)
Commit(ctx context.Context) error
Rollback(ctx context.Context) error
}
Tx represents a database transaction.
type TxOptions ¶
type TxOptions struct {
Isolation IsolationLevel
ReadOnly bool
}
TxOptions configures transaction behaviour.
Click to show internal directories.
Click to hide internal directories.