mysqldb

package
v0.0.0-...-ee25cb1 Latest Latest
Warning

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

Go to latest
Published: Feb 12, 2025 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func And

func And(stmts ...sequel.WhereClause) sequel.WhereClause

func Asc

func Between

func Between[T comparable](f sequel.ColumnValuer[T], from, to T) sequel.WhereClause

func DbTable

func DbTable[T sequel.Tabler](model T) string

func DeleteByPK

func DeleteByPK[T sequel.KeyValuer](ctx context.Context, sqlConn sequel.DB, model T) (sql.Result, error)

DeleteByPK is to update single record using primary key.

func Desc

func Equal

func Equal[T comparable](f sequel.ColumnValuer[T], value T) sequel.WhereClause

func ExecStmt

func ExecStmt[T any, Stmt interface {
	UpdateStmt | DeleteStmt
}](ctx context.Context, sqlConn sequel.DB, stmt Stmt) (sql.Result, error)

func FindByPK

func FindByPK[T sequel.KeyValuer, Ptr sequel.KeyValueScanner[T]](ctx context.Context, sqlConn sequel.DB, model Ptr) error

FindByPK is to find single record using primary key.

func GreaterThan

func GreaterThan[T comparable](f sequel.ColumnValuer[T], value T) sequel.WhereClause

func GreaterThanOrEqual

func GreaterThanOrEqual[T comparable](f sequel.ColumnValuer[T], value T) sequel.WhereClause

func In

func In[T any](f sequel.ColumnValuer[T], values ...T) sequel.WhereClause

func Insert

func Insert[T sequel.TableColumnValuer](ctx context.Context, sqlConn sequel.DB, data []T) (sql.Result, error)

Insert is a helper function to insert multiple records.

func InsertOne

func InsertOne[T sequel.TableColumnValuer, Ptr interface {
	sequel.TableColumnValuer
	sequel.PtrScanner[T]
}](ctx context.Context, sqlConn sequel.DB, model Ptr) (sql.Result, error)

func IsNotNull

func IsNotNull[T any](f sequel.ColumnValuer[T]) sequel.WhereClause

func IsNull

func IsNull[T any](f sequel.ColumnValuer[T]) sequel.WhereClause

func LessThan

func LessThan[T comparable](f sequel.ColumnValuer[T], value T) sequel.WhereClause

func LessThanOrEqual

func LessThanOrEqual[T comparable](f sequel.ColumnValuer[T], value T) sequel.WhereClause

func Like

func Like[T comparable](f sequel.ColumnValuer[T], value T) sequel.WhereClause

func NotEqual

func NotEqual[T comparable](f sequel.ColumnValuer[T], value T) sequel.WhereClause

func NotIn

func NotIn[T any](f sequel.ColumnValuer[T], values ...T) sequel.WhereClause

func NotLike

func NotLike[T comparable](f sequel.ColumnValuer[T], value T) sequel.WhereClause

func Or

func Or(stmts ...sequel.WhereClause) sequel.WhereClause

func QueryOneStmt

func QueryOneStmt[T any, Ptr sequel.PtrScanner[T], Stmt interface {
	SelectOneStmt | *SqlStmt
}](ctx context.Context, sqlConn sequel.DB, stmt Stmt) (Ptr, error)

func QueryStmt

func QueryStmt[T any, Ptr sequel.PtrScanner[T], Stmt interface {
	SelectStmt | *SqlStmt
}](ctx context.Context, sqlConn sequel.DB, stmt Stmt) ([]T, error)

func ReleaseStmt

func ReleaseStmt(stmt *SqlStmt)

func Set

func Set[T any](f sequel.ColumnValuer[T], value ...T) sequel.SetClause

func TableColumns

func TableColumns[T sequel.Columner](model T) []string

func UpdateByPK

func UpdateByPK[T sequel.KeyValuer](ctx context.Context, sqlConn sequel.DB, model T) (sql.Result, error)

UpdateByPK is to update single record using primary key.

func Upsert

func Upsert[T interface {
	sequel.Keyer
	sequel.Inserter
}, Ptr sequel.PtrScanner[T]](ctx context.Context, sqlConn sequel.DB, data []T, override bool, omittedFields ...string) (sql.Result, error)

Upsert is a helper function to upsert multiple records.

func UpsertOne

func UpsertOne[T sequel.KeyValuer, Ptr sequel.KeyValueScanner[T]](ctx context.Context, sqlConn sequel.DB, model Ptr, override bool, omittedFields ...string) (sql.Result, error)

Types

type DeleteStmt

type DeleteStmt struct {
	FromTable string
	Where     sequel.WhereClause
	OrderBy   []sequel.OrderByClause
	Limit     uint16
}

type Pager

type Pager[T sequel.KeyValuer, Ptr sequel.KeyValueScanner[T]] struct {
	// contains filtered or unexported fields
}

func Paginate

func Paginate[T sequel.KeyValuer, Ptr sequel.KeyValueScanner[T]](stmt PaginateStmt) *Pager[T, Ptr]

func (*Pager[T, Ptr]) Next

func (r *Pager[T, Ptr]) Next(ctx context.Context, sqlConn sequel.DB, cursor ...T) iter.Seq[*Result[T]]

func (*Pager[T, Ptr]) Prev

func (r *Pager[T, Ptr]) Prev(ctx context.Context, sqlConn sequel.DB, cursor ...T) iter.Seq[*Result[T]]

type PaginateStmt

type PaginateStmt struct {
	Select    []string
	FromTable string
	Where     sequel.WhereClause
	OrderBy   []sequel.OrderByClause
	Limit     uint16
}

type Result

type Result[T any] struct {
	// contains filtered or unexported fields
}

func (*Result[T]) All

func (r *Result[T]) All(yield func(T) bool)

func (*Result[T]) AllWithIndex

func (r *Result[T]) AllWithIndex(yield func(int, T) bool)

func (*Result[T]) Err

func (r *Result[T]) Err() error

type SelectOneStmt

type SelectOneStmt struct {
	Select    []string
	FromTable string
	Where     sequel.WhereClause
	OrderBy   []sequel.OrderByClause
	GroupBy   []string
}

type SelectStmt

type SelectStmt struct {
	Select    []string
	FromTable string
	Where     sequel.WhereClause
	OrderBy   []sequel.OrderByClause
	GroupBy   []string
	Offset    uint64
	Limit     uint16
}

type SqlStmt

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

func AcquireStmt

func AcquireStmt() *SqlStmt

func (SqlStmt) Args

func (s SqlStmt) Args() []any

func (*SqlStmt) Format

func (s *SqlStmt) Format(f fmt.State, verb rune)

func (*SqlStmt) Query

func (s *SqlStmt) Query() string

func (*SqlStmt) Reset

func (s *SqlStmt) Reset()

func (*SqlStmt) Var

func (s *SqlStmt) Var(value any) string

func (*SqlStmt) Vars

func (s *SqlStmt) Vars(values []any) string

func (*SqlStmt) Write

func (s *SqlStmt) Write(p []byte) (int, error)

func (*SqlStmt) WriteByte

func (s *SqlStmt) WriteByte(c byte) error

func (*SqlStmt) WriteString

func (s *SqlStmt) WriteString(v string) (int, error)

type UpdateStmt

type UpdateStmt struct {
	Table   string
	Set     []sequel.SetClause
	Where   sequel.WhereClause
	OrderBy []sequel.OrderByClause
	Limit   uint16
}

Jump to

Keyboard shortcuts

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