db

package
v0.16.3 Latest Latest
Warning

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

Go to latest
Published: Nov 30, 2024 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ColumnFetcher

type ColumnFetcher[FilterValue, FieldValue any] struct {
	// contains filtered or unexported fields
}

ColumnFetcher - формирователь запроса для получения списка значений заданного поля таблицы на основе фильтрации по другому заданному полю.

func NewColumnFetcher

func NewColumnFetcher[FilterValue, FieldValue any](
	client mrstorage.DBConnManager,
	tableName, fieldKeyName, columnName string,
	fieldDeletedName string,
) ColumnFetcher[FilterValue, FieldValue]

NewColumnFetcher - создаёт объект ColumnFetcher.

func (ColumnFetcher[FilterValue, FieldValue]) Fetch

func (re ColumnFetcher[FilterValue, FieldValue]) Fetch(ctx context.Context, byValue FilterValue) ([]FieldValue, error)

Fetch - возвращает список значений полей по указанному значению поля-фильтра.

type FieldFetcher

type FieldFetcher[RowID, FieldValue any] struct {
	// contains filtered or unexported fields
}

FieldFetcher - формирователь запроса для получения значения заданного поля таблицы.

func NewFieldFetcher

func NewFieldFetcher[RowID, FieldValue any](
	client mrstorage.DBConnManager,
	tableName, fieldKeyName, fieldName string,
	fieldDeletedName string,
) FieldFetcher[RowID, FieldValue]

NewFieldFetcher - создаёт объект FieldFetcher.

func (FieldFetcher[RowID, FieldValue]) Fetch

func (re FieldFetcher[RowID, FieldValue]) Fetch(ctx context.Context, id RowID) (FieldValue, error)

Fetch - возвращает значение поля для указанной записи в таблице. result: nil - exists, ErrStorageNoRowFound - not exists, error - query error.

type FieldUpdater

type FieldUpdater[RowID any, FieldValue any] struct {
	// contains filtered or unexported fields
}

FieldUpdater - формирователь запроса для получения/обновления значения заданного поля таблицы.

func NewFieldUpdater

func NewFieldUpdater[RowID, FieldValue any](
	client mrstorage.DBConnManager,
	tableName, fieldKeyName, fieldName string,
	fieldDeletedName string,
) FieldUpdater[RowID, FieldValue]

NewFieldUpdater - создаёт объект FieldUpdater.

func (FieldUpdater[RowID, FieldValue]) Fetch

func (re FieldUpdater[RowID, FieldValue]) Fetch(ctx context.Context, id RowID) (FieldValue, error)

Fetch - возвращает значение поля для указанной записи в таблице. result: nil - exists, ErrStorageNoRowFound - not exists, error - query error.

func (FieldUpdater[RowID, FieldValue]) Update

func (re FieldUpdater[RowID, FieldValue]) Update(ctx context.Context, id RowID, value FieldValue) error

Update - обновляет значение поля указанной записи в таблице.

type FieldWithVersionUpdater

type FieldWithVersionUpdater[RowID any, VersionValue constraints.Integer, FieldValue any] struct {
	// contains filtered or unexported fields
}

FieldWithVersionUpdater - формирователь запроса для получения/обновления значения заданного поля таблицы. При каждом обновлении записи происходит увеличение её версии, которая сохраняется в специально заданном поле.

func NewFieldWithVersionUpdater

func NewFieldWithVersionUpdater[RowID any, VersionValue constraints.Integer, FieldValue any](
	client mrstorage.DBConnManager,
	tableName, fieldKeyName, fieldVersionName, fieldName string,
	fieldDeletedName string,
) FieldWithVersionUpdater[RowID, VersionValue, FieldValue]

NewFieldWithVersionUpdater - создаёт объект FieldWithVersionUpdater.

func (FieldWithVersionUpdater[RowID, VersionValue, FieldValue]) Fetch

func (re FieldWithVersionUpdater[RowID, VersionValue, FieldValue]) Fetch(ctx context.Context, id RowID) (FieldValue, error)

Fetch - возвращает значение поля для указанной записи в таблице. result: nil - exists, ErrStorageNoRowFound - not exists, error - query error.

func (FieldWithVersionUpdater[RowID, VersionValue, FieldValue]) Update

func (re FieldWithVersionUpdater[RowID, VersionValue, FieldValue]) Update(
	ctx context.Context,
	id RowID,
	version VersionValue,
	field FieldValue,
) (VersionValue, error)

Update - обновляет значение поля указанной записи в таблице и возвращает идентификатор её новой версии.

type RowExistsChecker

type RowExistsChecker[RowID any] struct {
	// contains filtered or unexported fields
}

RowExistsChecker - формирователь запроса для проверки существования записи для заданного поля таблицы.

func NewRowExistsChecker

func NewRowExistsChecker[RowID any](
	client mrstorage.DBConnManager,
	tableName, fieldKeyName string,
	fieldDeletedName string,
) RowExistsChecker[RowID]

NewRowExistsChecker - создаёт объект RowExistsChecker.

func (RowExistsChecker[RowID]) IsExist

func (re RowExistsChecker[RowID]) IsExist(ctx context.Context, id RowID) error

IsExist - проверяет существование записи по указанному значению поля в таблице. result: nil - exists, ErrStorageNoRowFound - not exists, error - query error

type RowSoftDeleter

type RowSoftDeleter[RowID any] struct {
	// contains filtered or unexported fields
}

RowSoftDeleter - формирователь запроса для пометки записи таблицы как удалённая.

func NewRowSoftDeleter

func NewRowSoftDeleter[RowID any](
	client mrstorage.DBConnManager,
	tableName, fieldKeyName, fieldVersionName, fieldDeletedName string,
) RowSoftDeleter[RowID]

NewRowSoftDeleter - создаёт объект RowSoftDeleter.

func (RowSoftDeleter[RowID]) Delete

func (re RowSoftDeleter[RowID]) Delete(ctx context.Context, id RowID) error

Delete - помечает указанную запись в качестве удалённой, если такая существует.

type TotalRowsFetcher

type TotalRowsFetcher[CountRows constraints.Integer] struct {
	// contains filtered or unexported fields
}

TotalRowsFetcher - формирователь запроса для получения кол-ва записей в заданной таблице.

func NewTotalRowsFetcher

func NewTotalRowsFetcher[CountRows constraints.Integer](client mrstorage.DBConnManager, tableName string) TotalRowsFetcher[CountRows]

NewTotalRowsFetcher - создаёт объект TotalRowsFetcher.

func (TotalRowsFetcher[CountRows]) Fetch

func (re TotalRowsFetcher[CountRows]) Fetch(ctx context.Context, where mrstorage.SQLPart) (CountRows, error)

Fetch - возвращает кол-ва записей в таблице по указанному условию.

Jump to

Keyboard shortcuts

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