Versions in this module Expand all Collapse all v2 v2.21.1 Jan 28, 2022 Changes in this version + var DuplicateEntryErrNumber uint16 = 1062 + var ErrNotDB = errors.New("db is not *sql.DB") + var ErrNotTx = errors.New("db is not *sql.Tx") + func AsAssignments(db DBExecutor, model builder.Model, zeroFields ...string) builder.Assignments + func DBErr(err error) *dbErr + func FieldValuesFromModel(table *builder.Table, model builder.Model, zeroFields ...string) builder.FieldValues + func InsertToDB(db DBExecutor, model builder.Model, zeroFields []string, ...) builder.SqlExpr + func Scan(rows *sql.Rows, v interface{}) error + type DB struct + func (d *DB) Begin() (DBExecutor, error) + func (d *DB) BeginTx(opt *sql.TxOptions) (DBExecutor, error) + func (d *DB) Commit() error + func (d *DB) Context() context.Context + func (d *DB) D() *Database + func (d *DB) Dialect() builder.Dialect + func (d *DB) ExecExpr(expr builder.SqlExpr) (sql.Result, error) + func (d *DB) IsTx() bool + func (d *DB) Migrate(ctx context.Context, db DBExecutor) error + func (d *DB) QueryExpr(expr builder.SqlExpr) (*sql.Rows, error) + func (d *DB) QueryExprAndScan(expr builder.SqlExpr, v interface{}) error + func (d *DB) Rollback() error + func (d *DB) SetConnMaxLifetime(t time.Duration) + func (d *DB) SetMaxIdleConns(n int) + func (d *DB) SetMaxOpenConns(n int) + func (d *DB) WithContext(ctx context.Context) DBExecutor + func (d DB) WithSchema(schema string) DBExecutor + type DBExecutor interface + Context func() context.Context + D func() *Database + Dialect func() builder.Dialect + T func(model builder.Model) *builder.Table + WithContext func(ctx context.Context) DBExecutor + WithSchema func(schema string) DBExecutor + type DBNameBinder interface + WithDBName func(dbName string) driver.Connector + type Database struct + Name string + Schema string + Tables builder.Tables + func NewDatabase(name string) *Database + func NewFeatureDatabase(name string) *Database + func (database *Database) AddTable(table *builder.Table) + func (database *Database) OpenDB(connector driver.Connector) *DB + func (database *Database) Register(model builder.Model) *builder.Table + func (database *Database) T(model builder.Model) *builder.Table + func (database *Database) Table(tableName string) *builder.Table + func (database Database) WithSchema(schema string) *Database + type MaybeTxExecutor interface + Begin func() (DBExecutor, error) + BeginTx func(*sql.TxOptions) (DBExecutor, error) + Commit func() error + IsTx func() bool + Rollback func() error + type Migrator interface + Migrate func(ctx context.Context, db DBExecutor) error + type ScanIterator interface + New func() interface{} + Next func(v interface{}) error + type SqlError struct + Msg string + Type sqlErrType + func NewSqlError(tpe sqlErrType, msg string) *SqlError + func (e *SqlError) Error() string + type SqlExecutor interface + ExecContext func(ctx context.Context, query string, args ...interface{}) (sql.Result, error) + QueryContext func(ctx context.Context, query string, args ...interface{}) (*sql.Rows, error) + type SqlxExecutor interface + ExecExpr func(expr builder.SqlExpr) (sql.Result, error) + QueryExpr func(expr builder.SqlExpr) (*sql.Rows, error) + QueryExprAndScan func(expr builder.SqlExpr, v interface{}) error + type Task func(db DBExecutor) error + func (task Task) Run(db DBExecutor) (err error) + type Tasks struct + func NewTasks(db DBExecutor) *Tasks + func (tasks *Tasks) Do() (err error) + func (tasks Tasks) With(task ...Task) *Tasks