Documentation
¶
Index ¶
- Constants
- func GetDriver(name string) (sqldriver.Driver, bool)
- func Insert[T any](ctx context.Context, db *DB, v T, opts ...WriteOpt) (sql.Result, error)
- func RegisterDialect(name string, d driver.Dialect)
- func RegisterDriver(name string, d sqldriver.Driver)
- func RegisterDriverWithDialect(name string, d sqldriver.Driver, dialect driver.Dialect)
- func ResetMetaCache()
- func SelectAll[T any](ctx context.Context, db *DB, q string, args ...any) ([]T, error)
- func SelectOne[T any](ctx context.Context, db *DB, q string, args ...any) (T, error)
- func SelectStruct[T any](ctx context.Context, db *DB, q string, args ...any) (T, error)deprecated
- func SelectStructs[T any](ctx context.Context, db *DB, q string, args ...any) ([]T, error)deprecated
- func Update[T any](ctx context.Context, db *DB, v T, opts ...WriteOpt) (sql.Result, error)
- func Upsert[T any](ctx context.Context, db *DB, v T, opts ...WriteOpt) (sql.Result, error)
- type BoolScanPolicy
- type DB
- func (db *DB) Begin() (Tx, error)
- func (db *DB) BeginTx(ctx context.Context, opts *sql.TxOptions) (Tx, error)
- func (db *DB) Close() error
- func (db *DB) Exec(query string, args ...any) (sql.Result, error)
- func (db *DB) ExecContext(ctx context.Context, query string, args ...any) (sql.Result, error)
- func (db *DB) Model(v any) *query.Query
- func (db *DB) Query(q string, args ...any) (*sql.Rows, error)
- func (db *DB) QueryContext(ctx context.Context, q string, args ...any) (*sql.Rows, error)
- func (db *DB) QueryRow(query string, args ...any) *sql.Row
- func (db *DB) QueryRowContext(ctx context.Context, query string, args ...any) *sql.Row
- func (db *DB) SQLDB() *sql.DB
- func (db *DB) SelectMap(ctx context.Context, q string, args ...any) (map[string]any, error)deprecated
- func (db *DB) SelectMaps(ctx context.Context, q string, args ...any) ([]map[string]any, error)deprecated
- func (db *DB) Table(name string) *query.Query
- func (db *DB) Transaction(fn func(tx Tx) error) error
- func (db *DB) TransactionContext(ctx context.Context, fn func(tx Tx) error) error
- type ErrBoolParse
- type Option
- type ScanOptions
- type Tx
- type WriteOpt
Constants ¶
const ( MySQL = "mysql" Postgres = "postgres" )
Database driver names.
Variables ¶
This section is empty.
Functions ¶
func RegisterDialect ¶ added in v0.2.0
RegisterDialect registers a SQL dialect for a driver name.
func RegisterDriver ¶ added in v0.2.0
RegisterDriver registers a database driver.
func RegisterDriverWithDialect ¶ added in v0.2.0
RegisterDriverWithDialect registers a database driver along with its dialect.
func ResetMetaCache ¶ added in v0.3.0
func ResetMetaCache()
ResetMetaCache clears cached reflection metadata. Intended for tests.
Types ¶
type BoolScanPolicy ¶ added in v0.3.1
type BoolScanPolicy int
const ( BoolStrict BoolScanPolicy = iota BoolCompat BoolLenient )
func (BoolScanPolicy) String ¶ added in v0.3.1
func (p BoolScanPolicy) String() string
type DB ¶
type DB struct {
// contains filtered or unexported fields
}
DB provides main ORM interface.
func Open ¶
Open opens a MySQL database with default pooling. Deprecated: use OpenWithDriver to specify a driver explicitly.
func OpenWithDriver ¶ added in v0.1.0
OpenWithDriver opens a database with default pooling for the given driver.
func OpenWithDriverOptions ¶ added in v0.3.1
OpenWithDriverOptions opens a database with options for the given driver.
func (*DB) ExecContext ¶ added in v0.0.3
ExecContext executes a raw SQL statement with a context.
func (*DB) QueryContext ¶ added in v0.0.3
QueryContext runs Query with a context.
func (*DB) QueryRow ¶ added in v0.0.3
QueryRow executes a query that is expected to return at most one row.
func (*DB) QueryRowContext ¶ added in v0.0.3
QueryRowContext executes a query with context returning at most one row.
func (*DB) Transaction ¶
Transaction executes fn in a transaction.
type ErrBoolParse ¶ added in v0.3.1
type ErrBoolParse struct {
Column string
Src any
Policy BoolScanPolicy
}
func (ErrBoolParse) Error ¶ added in v0.3.1
func (e ErrBoolParse) Error() string
type Option ¶ added in v0.3.1
type Option func(*DB)
Option configures DB at creation.
func WithBoolScanPolicy ¶ added in v0.3.1
func WithBoolScanPolicy(p BoolScanPolicy) Option
WithBoolScanPolicy sets the bool scanning policy.
type ScanOptions ¶ added in v0.3.1
type ScanOptions struct {
BoolPolicy BoolScanPolicy
}
type WriteOpt ¶ added in v0.3.0
type WriteOpt func(*writeOptions)
WriteOpt configures write behavior.