Documentation ¶
Overview ¶
package sqx contains functions that uses squirrel and scany
Index ¶
- Variables
- func DeleteOne(ctx context.Context, tx pgx.Tx, sb sq.DeleteBuilder) error
- func NewStatementBuilder() sq.StatementBuilderType
- func Query(ctx context.Context, tx pgx.Tx, sb sq.SelectBuilder, v interface{}) (pgx.Rows, error)
- func QueryRowScan(ctx context.Context, tx pgx.Tx, sb sq.Sqlizer, v ...interface{}) error
- func ScanAll(ctx context.Context, tx pgx.Tx, sb sq.SelectBuilder, v interface{}) error
- func ScanOne(ctx context.Context, tx pgx.Tx, sb sq.SelectBuilder, v interface{}) error
- func Update(ctx context.Context, tx pgx.Tx, sb sq.UpdateBuilder) (int64, error)
- func UpdateOne(ctx context.Context, tx pgx.Tx, sb sq.UpdateBuilder) error
- func WithOrderBy(ctx context.Context, sb sq.SelectBuilder, q url.Values, defaultOrdering string, ...) sq.SelectBuilder
- func WithPaging(ctx context.Context, sb sq.SelectBuilder, q url.Values, opts *PagingOptions) sq.SelectBuilder
- type OrderByMapping
- type PagingOptions
Constants ¶
This section is empty.
Variables ¶
var DefaultPagingOptions = PagingOptions{ DefaultPageSize: 100, MaxPageSize: 1000, PageSizeParameter: "size", PageNumberParameter: "page", Logger: logging.Get, }
var (
ErrNoRowsAffected = errors.New("no rows affected")
)
Functions ¶
func DeleteOne ¶
func DeleteOne(ctx context.Context, tx pgx.Tx, sb sq.DeleteBuilder) error
DeleteOne does a sql update and checks if exactly one row if affected by the update.
Returns ErrNoRowsAffected if 0 rows were affaced by the update.
func NewStatementBuilder ¶
func NewStatementBuilder() sq.StatementBuilderType
NewStatementBuilder returns a squirrel statement builder with postgres dollar placeholder format.
func Query ¶
func Query(ctx context.Context, tx pgx.Tx, sb sq.SelectBuilder, v interface{}) (pgx.Rows, error)
func QueryRowScan ¶
QueryRowScan queries and scans single row responses.
func ScanAll ¶
func ScanAll(ctx context.Context, tx pgx.Tx, sb sq.SelectBuilder, v interface{}) error
func ScanOne ¶
func ScanOne(ctx context.Context, tx pgx.Tx, sb sq.SelectBuilder, v interface{}) error
func UpdateOne ¶
func UpdateOne(ctx context.Context, tx pgx.Tx, sb sq.UpdateBuilder) error
UpdateOne does a sql update and checks if exactly one row if affected by the update.
Returns ErrNoRowsAffected if 0 rows were affaced by the update.
func WithOrderBy ¶
func WithOrderBy(ctx context.Context, sb sq.SelectBuilder, q url.Values, defaultOrdering string, mapping []OrderByMapping) sq.SelectBuilder
func WithPaging ¶
func WithPaging(ctx context.Context, sb sq.SelectBuilder, q url.Values, opts *PagingOptions) sq.SelectBuilder
WithPaging
Types ¶
type OrderByMapping ¶
OrderByMapping defines the relation between the order_by url parameter and database ordering.
type PagingOptions ¶
type PagingOptions struct { DefaultPageSize int64 MaxPageSize int64 // set to -1 to disable max page size PageSizeParameter string PageNumberParameter string Logger logging.LoggerFunc }
PagingOptions. To completley disable logging it is recommended to set