mysql

package
v0.0.0-...-4dd8aae Latest Latest
Warning

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

Go to latest
Published: Oct 4, 2022 License: MIT Imports: 10 Imported by: 0

Documentation

Overview

nolint

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrLockTimeout     = errors.New("timeout is reached for lock")
	ErrLockNotFound    = errors.New("lock not found")
	ErrLockNotAcquired = errors.New("lock not acquired")
)

Functions

This section is empty.

Types

type Client

type Client interface {
	Query(query string, args ...interface{}) (*sql.Rows, error)
	QueryRow(query string, args ...interface{}) *sql.Row
	Exec(query string, args ...interface{}) (sql.Result, error)

	Queryx(query string, args ...interface{}) (*sqlx.Rows, error)
	QueryRowx(query string, args ...interface{}) *sqlx.Row

	Select(dest interface{}, query string, args ...interface{}) error
	Get(dest interface{}, query string, args ...interface{}) error
	NamedQuery(query string, arg interface{}) (*sqlx.Rows, error)
	NamedExec(query string, arg interface{}) (sql.Result, error)
}

type Connector

type Connector interface {
	Open(dsn DSN, maxConnections int) error
	MigrateUp(dsn DSN, migrationsProvider MigrationProvider) error
	Client() Client
	TransactionalClient() TransactionalClient
	Close() error
}

func NewConnector

func NewConnector() Connector

type DSN

type DSN struct {
	User     string
	Password string
	Host     string
	Database string
}

func (*DSN) String

func (dsn *DSN) String() string

type Lock

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

func NewLock

func NewLock(client Client, lockName string) Lock

func (*Lock) Lock

func (l *Lock) Lock() error

func (*Lock) Unlock

func (l *Lock) Unlock() error

type MigrationProvider

type MigrationProvider interface {
	GetDir() http.FileSystem
}

type Transaction

type Transaction interface {
	Client
	Commit() error
	Rollback() error
}

type TransactionalClient

type TransactionalClient interface {
	Client
	BeginTransaction() (Transaction, error)
}

Jump to

Keyboard shortcuts

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