Versions in this module Expand all Collapse all v0 v0.0.1 Feb 26, 2024 Changes in this version + const DEFAULT_LOG_FLAG + const DEFAULT_LOG_LEVEL + const DEFAULT_LOG_PREFIX + const Version + var DefaultPostgresSchema = "public" + var ErrCacheFailed = errors.New("cache failed") + var ErrConditionType = errors.New("unsupported condition type") + var ErrNeedDeletedCond = errors.New("delete action needs at least one condition") + var ErrNoElementsOnSlice = errors.New("no element on slice when insert") + var ErrNotExist = errors.New("record does not exist") + var ErrNotImplemented = errors.New("not implemented") + var ErrParamsType = errors.New("params type error") + var ErrTableNotFound = errors.New("table not found") + var ErrUnSupportedSQLType = errors.New("unsupported sql type") + var ErrUnSupportedType = errors.New("unsupported type error") + func AutoIncrTagHandler(ctx *tagContext) error + func CommentTagHandler(ctx *tagContext) error + func CreatedTagHandler(ctx *tagContext) error + func DefaultTagHandler(ctx *tagContext) error + func DeletedTagHandler(ctx *tagContext) error + func ExtendsTagHandler(ctx *tagContext) error + func IgnoreTagHandler(ctx *tagContext) error + func IndexTagHandler(ctx *tagContext) error + func LocalTagHandler(ctx *tagContext) error + func NULLTagHandler(ctx *tagContext) error + func NotNullTagHandler(ctx *tagContext) error + func OnlyFromDBTagHandler(ctx *tagContext) error + func OnlyToDBTagHandler(ctx *tagContext) error + func PKTagHandler(ctx *tagContext) error + func SQLTypeTagHandler(ctx *tagContext) error + func UTCTagHandler(ctx *tagContext) error + func UniqueTagHandler(ctx *tagContext) error + func UpdatedTagHandler(ctx *tagContext) error + func VersionTagHandler(ctx *tagContext) error + type AfterDeleteProcessor interface + AfterDelete func() + type AfterInsertProcessor interface + AfterInsert func() + type AfterLoadProcessor interface + AfterLoad func() + type AfterLoadSessionProcessor interface + AfterLoad func(*Session) + type AfterSetProcessor interface + AfterSet func(string, Cell) + type AfterUpdateProcessor interface + AfterUpdate func() + type BeforeDeleteProcessor interface + BeforeDelete func() + type BeforeInsertProcessor interface + BeforeInsert func() + type BeforeSetProcessor interface + BeforeSet func(string, Cell) + type BeforeUpdateProcessor interface + BeforeUpdate func() + type Cell *any + type DiscardLogger struct + func (DiscardLogger) Debug(v ...any) + func (DiscardLogger) Debugf(format string, v ...any) + func (DiscardLogger) Error(v ...any) + func (DiscardLogger) Errorf(format string, v ...any) + func (DiscardLogger) Info(v ...any) + func (DiscardLogger) Infof(format string, v ...any) + func (DiscardLogger) IsShowSQL() bool + func (DiscardLogger) Level() core.LogLevel + func (DiscardLogger) SetLevel(l core.LogLevel) + func (DiscardLogger) ShowSQL(show ...bool) + func (DiscardLogger) Warn(v ...any) + func (DiscardLogger) Warnf(format string, v ...any) + type Engine struct + Cacher core.Cacher + ColumnMapper core.IMapper + DatabaseTZ *time.Location + TZLocation *time.Location + TableMapper core.IMapper + Tables map[reflect.Type]*core.Table + TagIdentifier string + func NewEngine(driverName string, dataSourceName string) (*Engine, error) + func (engine *Engine) After(closures func(any)) *Session + func (engine *Engine) Before(closures func(any)) *Session + func (engine *Engine) Charset(charset string) *Session + func (engine *Engine) Close() error + func (engine *Engine) CondDeleted(col *core.Column) builder.Cond + func (engine *Engine) DB() *core.DB + func (engine *Engine) DBMetas() ([]*core.Table, error) + func (engine *Engine) DataSourceName() string + func (engine *Engine) Dialect() core.Dialect + func (engine *Engine) DriverName() string + func (engine *Engine) Exec(sqlOrArgs ...any) (sql.Result, error) + func (engine *Engine) Find(beans any, condiBeans ...any) error + func (engine *Engine) GobRegister(v any) *Engine + func (engine *Engine) ID(id any) *Session + func (engine *Engine) Insert(beans ...any) (int64, error) + func (engine *Engine) IsTableExist(beanOrTableName any) (bool, error) + func (engine *Engine) NewDB() (*core.DB, error) + func (engine *Engine) NewSession() *Session + func (engine *Engine) NoAutoTime() *Session + func (engine *Engine) Ping() error + func (engine *Engine) Quote(value string) string + func (engine *Engine) QuoteTo(buf *strings.Builder, value string) + func (engine *Engine) SQL(query any, args ...any) *Session + func (engine *Engine) SetColumnMapper(mapper core.IMapper) + func (engine *Engine) SetConnMaxLifetime(d time.Duration) + func (engine *Engine) SetLogger(logger core.ILogger) + func (engine *Engine) SetMapper(mapper core.IMapper) + func (engine *Engine) SetMaxIdleConns(conns int) + func (engine *Engine) SetMaxOpenConns(conns int) + func (engine *Engine) SetTableMapper(mapper core.IMapper) + func (engine *Engine) ShowExecTime(show ...bool) + func (engine *Engine) ShowSQL(show ...bool) + func (engine *Engine) StoreEngine(storeEngine string) *Session + func (engine *Engine) SupportInsertMany() bool + func (engine *Engine) Sync(beans ...any) error + func (engine *Engine) Sync2(beans ...any) error + func (engine *Engine) Table(tableNameOrBean any) *Session + func (engine *Engine) TableName(bean any, includeSchema ...bool) string + func (engine *Engine) Where(query any, args ...any) *Session + type ErrFieldIsNotExist struct + FieldName string + TableName string + func (e ErrFieldIsNotExist) Error() string + type ErrFieldIsNotValid struct + FieldName string + TableName string + func (e ErrFieldIsNotValid) Error() string + type ErrUnsupportedExprType struct + func (err ErrUnsupportedExprType) Error() string + type IterFunc func(idx int, bean interface{}) error + type JSONInterface interface + Marshal func(v any) ([]byte, error) + Unmarshal func(data []byte, v any) error + var DefaultJSONHandler JSONInterface = StdJSON{} + type Rows struct + func (rows *Rows) Close() error + func (rows *Rows) Err() error + func (rows *Rows) Next() bool + func (rows *Rows) Scan(bean any) error + type Session struct + func (session *Session) After(closures func(any)) *Session + func (session *Session) Alias(alias string) *Session + func (session *Session) AllCols() *Session + func (session *Session) And(query any, args ...any) *Session + func (session *Session) Asc(colNames ...string) *Session + func (session *Session) Before(closures func(any)) *Session + func (session *Session) Begin() error + func (session *Session) BufferSize(size int) *Session + func (session *Session) Charset(charset string) *Session + func (session *Session) Close() + func (session *Session) Cols(columns ...string) *Session + func (session *Session) Commit() error + func (session *Session) Conds() builder.Cond + func (session *Session) Context(ctx context.Context) *Session + func (session *Session) Count(bean ...interface{}) (int64, error) + func (session *Session) CreateIndexes(bean any) error + func (session *Session) CreateTable(bean any) error + func (session *Session) CreateUniques(bean any) error + func (session *Session) DB() *core.DB + func (session *Session) Delete(bean any) (int64, error) + func (session *Session) Desc(colNames ...string) *Session + func (session *Session) Distinct(columns ...string) *Session + func (session *Session) DropIndexes(bean any) error + func (session *Session) DropTable(beanOrTableName any) error + func (session *Session) Exec(sqlOrArgs ...any) (sql.Result, error) + func (session *Session) Exist(bean ...any) (bool, error) + func (session *Session) Find(rowsSlicePtr any, condiBean ...any) error + func (session *Session) FindAndCount(rowsSlicePtr any, condiBean ...any) (int64, error) + func (session *Session) ForUpdate() *Session + func (session *Session) Get(bean any) (bool, error) + func (session *Session) GroupBy(keys string) *Session + func (session *Session) Having(conditions string) *Session + func (session *Session) ID(id any) *Session + func (session *Session) Id(id any) *Session + func (session *Session) In(column string, args ...any) *Session + func (session *Session) Init() + func (session *Session) Insert(beans ...any) (int64, error) + func (session *Session) InsertMulti(rowsSlicePtr any) (int64, error) + func (session *Session) InsertOne(bean any) (int64, error) + func (session *Session) IsClosed() bool + func (session *Session) IsTableEmpty(bean any) (bool, error) + func (session *Session) IsTableExist(beanOrTableName any) (bool, error) + func (session *Session) Iterate(bean interface{}, fun IterFunc) error + func (session *Session) Join(joinOperator string, tablename any, condition string, args ...any) *Session + func (session *Session) LastSQL() (string, []any) + func (session *Session) Limit(limit int, start ...int) *Session + func (session *Session) MustCols(columns ...string) *Session + func (session *Session) MustLogSQL(log ...bool) *Session + func (session *Session) NoAutoCondition(no ...bool) *Session + func (session *Session) NoAutoTime() *Session + func (session *Session) NoCache() *Session + func (session *Session) NotIn(column string, args ...any) *Session + func (session *Session) Nullable(columns ...string) *Session + func (session *Session) Omit(columns ...string) *Session + func (session *Session) Or(query any, args ...any) *Session + func (session *Session) OrderBy(order string) *Session + func (session *Session) Ping() error + func (session *Session) PingContext(ctx context.Context) error + func (session *Session) Prepare() *Session + func (session *Session) Query(sqlOrArgs ...interface{}) ([]map[string][]byte, error) + func (session *Session) QueryInterface(sqlOrArgs ...interface{}) ([]map[string]interface{}, error) + func (session *Session) QuerySliceString(sqlOrArgs ...interface{}) ([][]string, error) + func (session *Session) QueryString(sqlOrArgs ...interface{}) ([]map[string]string, error) + func (session *Session) Rollback() error + func (session *Session) Rows(bean interface{}) (*Rows, error) + func (session *Session) SQL(query any, args ...any) *Session + func (session *Session) Select(str string) *Session + func (session *Session) Sql(query string, args ...any) *Session + func (session *Session) StoreEngine(storeEngine string) *Session + func (session *Session) Sum(bean interface{}, columnName string) (res float64, err error) + func (session *Session) SumInt(bean interface{}, columnName string) (res int64, err error) + func (session *Session) Sums(bean interface{}, columnNames ...string) ([]float64, error) + func (session *Session) SumsInt(bean interface{}, columnNames ...string) ([]int64, error) + func (session *Session) Sync2(beans ...any) error + func (session *Session) Table(tableNameOrBean any) *Session + func (session *Session) Unscoped() *Session + func (session *Session) Update(bean any, condiBean ...any) (int64, error) + func (session *Session) UseBool(columns ...string) *Session + func (session *Session) Where(query any, args ...any) *Session + type SimpleLogger struct + DEBUG *log.Logger + ERR *log.Logger + INFO *log.Logger + WARN *log.Logger + func NewSimpleLogger(out io.Writer) *SimpleLogger + func (s *SimpleLogger) Debug(v ...any) + func (s *SimpleLogger) Debugf(format string, v ...any) + func (s *SimpleLogger) Error(v ...any) + func (s *SimpleLogger) Errorf(format string, v ...any) + func (s *SimpleLogger) Info(v ...any) + func (s *SimpleLogger) Infof(format string, v ...any) + func (s *SimpleLogger) IsShowSQL() bool + func (s *SimpleLogger) Level() core.LogLevel + func (s *SimpleLogger) SetLevel(l core.LogLevel) + func (s *SimpleLogger) ShowSQL(show ...bool) + func (s *SimpleLogger) Warn(v ...any) + func (s *SimpleLogger) Warnf(format string, v ...any) + type Statement struct + AltTableName string + Charset string + ColumnStr string + Engine *Engine + GroupByStr string + HavingStr string + IsDistinct bool + IsForUpdate bool + JoinStr string + LimitN *int + OmitStr string + OrderStr string + RawParams []any + RawSQL string + RefTable *core.Table + Start int + StoreEngine string + TableAlias string + UseAutoJoin bool + UseAutoTime bool + UseCache bool + func (statement *Statement) Alias(alias string) *Statement + func (statement *Statement) AllCols() *Statement + func (statement *Statement) And(query any, args ...any) *Statement + func (statement *Statement) Asc(colNames ...string) *Statement + func (statement *Statement) Cols(columns ...string) *Statement + func (statement *Statement) Decr(column string, arg ...any) *Statement + func (statement *Statement) Desc(colNames ...string) *Statement + func (statement *Statement) Distinct(columns ...string) *Statement + func (statement *Statement) ForUpdate() *Statement + func (statement *Statement) GroupBy(keys string) *Statement + func (statement *Statement) Having(conditions string) *Statement + func (statement *Statement) ID(id any) *Statement + func (statement *Statement) In(column string, args ...any) *Statement + func (statement *Statement) Incr(column string, arg ...any) *Statement + func (statement *Statement) Init() + func (statement *Statement) Join(joinOP string, tablename any, condition string, args ...any) *Statement + func (statement *Statement) Limit(limit int, start ...int) *Statement + func (statement *Statement) MustCols(columns ...string) *Statement + func (statement *Statement) NoAutoCondition(no ...bool) *Statement + func (statement *Statement) NotIn(column string, args ...any) *Statement + func (statement *Statement) Nullable(columns ...string) + func (statement *Statement) Omit(columns ...string) + func (statement *Statement) Or(query any, args ...any) *Statement + func (statement *Statement) OrderBy(order string) *Statement + func (statement *Statement) SQL(query any, args ...any) *Statement + func (statement *Statement) Select(str string) *Statement + func (statement *Statement) SetExpr(column string, expression any) *Statement + func (statement *Statement) Table(tableNameOrBean any) *Statement + func (statement *Statement) TableName() string + func (statement *Statement) Top(limit int) *Statement + func (statement *Statement) Unscoped() *Statement + func (statement *Statement) UseBool(columns ...string) *Statement + func (statement *Statement) Where(query any, args ...any) *Statement + type StdJSON struct + func (StdJSON) Marshal(v any) ([]byte, error) + func (StdJSON) Unmarshal(data []byte, v any) error + type SyslogLogger struct — darwin/amd64, js/wasm, linux/amd64 + func NewSyslogLogger(w *syslog.Writer) *SyslogLogger + func (s *SyslogLogger) Debug(v ...any) + func (s *SyslogLogger) Debugf(format string, v ...any) + func (s *SyslogLogger) Error(v ...any) + func (s *SyslogLogger) Errorf(format string, v ...any) + func (s *SyslogLogger) Info(v ...any) + func (s *SyslogLogger) Infof(format string, v ...any) + func (s *SyslogLogger) IsShowSQL() bool + func (s *SyslogLogger) Level() core.LogLevel + func (s *SyslogLogger) SetLevel(l core.LogLevel) + func (s *SyslogLogger) ShowSQL(show ...bool) + func (s *SyslogLogger) Warn(v ...any) + func (s *SyslogLogger) Warnf(format string, v ...any) + type Table struct + Name string + type TableName interface + TableName func() string