Documentation
¶
Index ¶
- Variables
- func CloseDB() error
- func GetDB() *gorm.DB
- func InitDB(config *config.Config) *gorm.DB
- func Transaction(fn func(tx *gorm.DB) error) error
- type Condition
- type PoolConfig
- type QueryBuilder
- func (qb *QueryBuilder) BatchCreate(values interface{}, batchSize int) error
- func (qb *QueryBuilder) BatchDelete(values interface{}) error
- func (qb *QueryBuilder) BatchUpdate(values interface{}, batchSize int) error
- func (qb *QueryBuilder) Clauses(conds ...clause.Expression) *QueryBuilder
- func (qb *QueryBuilder) Count(count *int64) error
- func (qb *QueryBuilder) Create(value interface{}) error
- func (qb *QueryBuilder) Debug() *QueryBuilder
- func (qb *QueryBuilder) Delete(value interface{}) error
- func (qb *QueryBuilder) Exec(sql string, values ...interface{}) error
- func (qb *QueryBuilder) Explain() (string, error)
- func (qb *QueryBuilder) Find(dest interface{}) error
- func (qb *QueryBuilder) First(dest interface{}) error
- func (qb *QueryBuilder) GetConditions() []Condition
- func (qb *QueryBuilder) GetPoolStats() (*sql.DBStats, error)
- func (qb *QueryBuilder) GetSelectedFields() []string
- func (qb *QueryBuilder) Group(name string) *QueryBuilder
- func (qb *QueryBuilder) Having(query interface{}, args ...interface{}) *QueryBuilder
- func (qb *QueryBuilder) Joins(query string, args ...interface{}) *QueryBuilder
- func (qb *QueryBuilder) Limit(limit int) *QueryBuilder
- func (qb *QueryBuilder) MonitorPool()
- func (qb *QueryBuilder) Offset(offset int) *QueryBuilder
- func (qb *QueryBuilder) Or(query interface{}, args ...interface{}) *QueryBuilder
- func (qb *QueryBuilder) Order(value interface{}) *QueryBuilder
- func (qb *QueryBuilder) Paginate(page, pageSize int, dest interface{}) (total int64, err error)
- func (qb *QueryBuilder) Pluck(column string, dest interface{}) error
- func (qb *QueryBuilder) Preload(query string, args ...interface{}) *QueryBuilder
- func (qb *QueryBuilder) Raw(sql string, values ...interface{}) *QueryBuilder
- func (qb *QueryBuilder) Reset() *QueryBuilder
- func (qb *QueryBuilder) Scan(dest interface{}) error
- func (qb *QueryBuilder) Select(fields ...string) *QueryBuilder
- func (qb *QueryBuilder) Transaction(fc func(tx *gorm.DB) error) error
- func (qb *QueryBuilder) Unscoped() *QueryBuilder
- func (qb *QueryBuilder) Updates(attrs interface{}) error
- func (qb *QueryBuilder) Where(query interface{}, args ...interface{}) *QueryBuilder
- func (qb *QueryBuilder) WithCache(redisClient *redisClient.Client, expiration time.Duration) *QueryBuilder
- func (qb *QueryBuilder) WithContext(ctx context.Context) *QueryBuilder
- func (qb *QueryBuilder) WithExplain() *QueryBuilder
- func (qb *QueryBuilder) WithMaxResultSize(size int) *QueryBuilder
- func (qb *QueryBuilder) WithOptimisticLock() *QueryBuilder
- func (qb *QueryBuilder) WithPoolConfig(config *PoolConfig) *QueryBuilder
- func (qb *QueryBuilder) WithSlowQueryThreshold(threshold time.Duration) *QueryBuilder
- type QueryStats
Constants ¶
This section is empty.
Variables ¶
View Source
var DB *gorm.DB
DB 数据库连接
Functions ¶
Types ¶
type PoolConfig ¶
type PoolConfig struct { MaxOpenConns int MaxIdleConns int ConnMaxLifetime time.Duration ConnMaxIdleTime time.Duration }
PoolConfig 连接池配置.
type QueryBuilder ¶
type QueryBuilder struct {
// contains filtered or unexported fields
}
QueryBuilder 查询构建器.
func (*QueryBuilder) BatchCreate ¶
func (qb *QueryBuilder) BatchCreate(values interface{}, batchSize int) error
BatchCreate 批量创建.
func (*QueryBuilder) BatchDelete ¶
func (qb *QueryBuilder) BatchDelete(values interface{}) error
BatchDelete 批量删除.
func (*QueryBuilder) BatchUpdate ¶
func (qb *QueryBuilder) BatchUpdate(values interface{}, batchSize int) error
BatchUpdate 批量更新.
func (*QueryBuilder) Clauses ¶
func (qb *QueryBuilder) Clauses(conds ...clause.Expression) *QueryBuilder
Clauses 添加子句
func (*QueryBuilder) Exec ¶
func (qb *QueryBuilder) Exec(sql string, values ...interface{}) error
Exec 执行SQL.
func (*QueryBuilder) GetConditions ¶
func (qb *QueryBuilder) GetConditions() []Condition
GetConditions 获取查询条件
func (*QueryBuilder) GetPoolStats ¶
func (qb *QueryBuilder) GetPoolStats() (*sql.DBStats, error)
GetPoolStats 获取连接池统计信息
func (*QueryBuilder) GetSelectedFields ¶
func (qb *QueryBuilder) GetSelectedFields() []string
GetSelectedFields 获取选择的字段
func (*QueryBuilder) Having ¶
func (qb *QueryBuilder) Having(query interface{}, args ...interface{}) *QueryBuilder
Having 分组条件.
func (*QueryBuilder) Joins ¶
func (qb *QueryBuilder) Joins(query string, args ...interface{}) *QueryBuilder
Joins 连接.
func (*QueryBuilder) Or ¶
func (qb *QueryBuilder) Or(query interface{}, args ...interface{}) *QueryBuilder
Or 添加OR条件.
func (*QueryBuilder) Order ¶
func (qb *QueryBuilder) Order(value interface{}) *QueryBuilder
Order 添加排序.
func (*QueryBuilder) Paginate ¶
func (qb *QueryBuilder) Paginate(page, pageSize int, dest interface{}) (total int64, err error)
Paginate 分页.
func (*QueryBuilder) Pluck ¶
func (qb *QueryBuilder) Pluck(column string, dest interface{}) error
Pluck 获取单个字段
func (*QueryBuilder) Preload ¶
func (qb *QueryBuilder) Preload(query string, args ...interface{}) *QueryBuilder
Preload 预加载关联.
func (*QueryBuilder) Raw ¶
func (qb *QueryBuilder) Raw(sql string, values ...interface{}) *QueryBuilder
Raw 执行原生SQL.
func (*QueryBuilder) Select ¶
func (qb *QueryBuilder) Select(fields ...string) *QueryBuilder
Select 选择字段.
func (*QueryBuilder) Transaction ¶
func (qb *QueryBuilder) Transaction(fc func(tx *gorm.DB) error) error
Transaction 事务.
func (*QueryBuilder) Updates ¶
func (qb *QueryBuilder) Updates(attrs interface{}) error
Updates 更新记录.
func (*QueryBuilder) Where ¶
func (qb *QueryBuilder) Where(query interface{}, args ...interface{}) *QueryBuilder
Where 添加查询条件.
func (*QueryBuilder) WithCache ¶
func (qb *QueryBuilder) WithCache(redisClient *redisClient.Client, expiration time.Duration) *QueryBuilder
WithCache 启用缓存.
func (*QueryBuilder) WithContext ¶
func (qb *QueryBuilder) WithContext(ctx context.Context) *QueryBuilder
WithContext 设置上下文.
func (*QueryBuilder) WithExplain ¶
func (qb *QueryBuilder) WithExplain() *QueryBuilder
WithExplain 启用查询计划分析.
func (*QueryBuilder) WithMaxResultSize ¶
func (qb *QueryBuilder) WithMaxResultSize(size int) *QueryBuilder
WithMaxResultSize 设置最大结果集大小.
func (*QueryBuilder) WithOptimisticLock ¶
func (qb *QueryBuilder) WithOptimisticLock() *QueryBuilder
WithOptimisticLock 启用乐观锁
func (*QueryBuilder) WithPoolConfig ¶
func (qb *QueryBuilder) WithPoolConfig(config *PoolConfig) *QueryBuilder
WithPoolConfig 配置连接池.
func (*QueryBuilder) WithSlowQueryThreshold ¶
func (qb *QueryBuilder) WithSlowQueryThreshold(threshold time.Duration) *QueryBuilder
WithSlowQueryThreshold 设置慢查询阈值.
Click to show internal directories.
Click to hide internal directories.