database

package
v0.0.0-...-1cf632a Latest Latest
Warning

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

Go to latest
Published: Mar 13, 2024 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

Package database provides low level operations with database.

Package database provides low level operations with database.

Index

Constants

View Source
const (
	DefaultMigrationsDir = "migrations"
	MigrationsTable      = "schema_migrations"
	SQLiteDriver         = "sqlite3"
	PostgresDriver       = "postgres"
)

constants for database package

Variables

View Source
var (
	ErrDuplicateKey = errors.New("duplicate key value violates unique constraint")
)

Functions

func PgError

func PgError(err error) error

Types

type AssetDirFunc

type AssetDirFunc func(name string) ([]string, error)

AssetDirFunc returns names files in migrations directory

type BinDataConfig

type BinDataConfig struct {
	AssetDirFunc AssetDirFunc
	Dir          string
	AssetFunc    bin.AssetFunc
}

BinDataConfig configuration for golang-migrate bindata migrating

type Connection

type Connection interface {
	BindNamed(query string, arg interface{}) (string, []interface{}, error)
	NamedExecContext(ctx context.Context, query string, arg interface{}) (sql.Result, error)
	GetContext(ctx context.Context, dest interface{}, query string, args ...interface{}) error
}

type Database

type Database struct {
	Connector *sqlx.DB
	// contains filtered or unexported fields
}

Database object capable of interacting with Database

func NewConnector

func NewConnector(cfg *entity.DatabaseConfig, binDataConfig *BinDataConfig, log *logger.Zerolog) (*Database, error)

NewConnector creates a new Database

func (*Database) AbortTransaction

func (db *Database) AbortTransaction(ctx context.Context) error

AbortTransaction aborts the transaction

func (*Database) BeginTransaction

func (db *Database) BeginTransaction(ctx context.Context) (context.Context, error)

BeginTransaction begins a transaction

func (*Database) Close

func (db *Database) Close()

Close closes database connection

func (*Database) CommitTransaction

func (db *Database) CommitTransaction(ctx context.Context, txErr error)

CommitTransaction commits the transaction

func (*Database) GetConnection

func (db *Database) GetConnection(ctx context.Context) Connection

Directories

Path Synopsis
Package types provides basic operations with SQL types
Package types provides basic operations with SQL types

Jump to

Keyboard shortcuts

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