Documentation
¶
Index ¶
- Constants
- Variables
- func MigrateOnce(db *gorm.DB, migrationName string, migrationFunc func())
- func New(cfg Config) (db *gorm.DB, err error)
- func NewLogger(writer logger.Writer, config logger.Config) logger.Interface
- func NewPartition(db *gorm.DB, database string, table string, partitionUnit PartitionUnitT, ...) *partition
- func NewVersionController(db *gorm.DB, upgradeStruct interface{}, installFunc func()) *versionController
- type Config
- type LogLevel
- type Migration
- type PartitionUnitT
- type VersionLog
Constants ¶
View Source
const ( Reset = "\033[0m" Red = "\033[31m" Green = "\033[32m" Yellow = "\033[33m" Blue = "\033[34m" Magenta = "\033[35m" Cyan = "\033[36m" White = "\033[37m" BlueBold = "\033[34;1m" MagentaBold = "\033[35;1m" RedBold = "\033[31;1m" YellowBold = "\033[33;1m" )
Colors
Variables ¶
View Source
var DefaultCronDuration = time.Hour
默认分区自动检查时间
View Source
var LocalDebug bool
Functions ¶
func MigrateOnce ¶ added in v0.0.14
MigrateOnce 限制某些迁移语句只能执行一次 在升级函数中使用
func NewPartition ¶ added in v0.0.5
func NewVersionController ¶ added in v0.0.14
func NewVersionController( db *gorm.DB, upgradeStruct interface{}, installFunc func(), ) *versionController
实例化版本控制实例
Types ¶
type Config ¶
type Config struct { Username string `mapstructure:"username" yaml:"username"` // 用户名 Password string `mapstructure:"password" yaml:"password"` // 密码 Addrs []string `mapstructure:"addrs" yaml:"addrs"` // 连接地址(host:port),多个以逗号分隔,Addrs[0]为master,其余为slave Database string `mapstructure:"database" yaml:"database"` // 要连接的数据库 Charset string `mapstructure:"charset" yaml:"charset"` // 字符集 Debug bool `mapstructure:"debug" yaml:"debug"` // 是否开启调试模式 MaxOpenConns int `mapstructure:"max_open_conns" yaml:"max_open_conns"` // 设置数据库的最大打开连接数 MaxLifetime int `mapstructure:"max_lifetime" yaml:"max_lifetime"` // 设置连接可以重用的最长时间(单位:秒) MaxIdleConns int `mapstructure:"max_idle_conns" yaml:"max_idle_conns"` // 设置空闲连接池中的最大连接数 MaxIdleTime int `mapstructure:"max_idle_time" yaml:"max_idle_time"` // 设置空闲连接池中的最大连接数 }
type Migration ¶ added in v0.0.11
type Migration struct { DB *gorm.DB // gorm Engine Database string // 数据库名称 TableName string // 原始表名称 AfterCreateHook func(*gorm.DB) error AfterUpdateHook func(*gorm.DB) error AfterDeleteHook func(*gorm.DB) error AlterSQL string // 执行变更的sql语句 }
func NewMigration ¶ added in v0.0.11
func (*Migration) AfterCreate ¶ added in v0.0.11
创建Hook
func (*Migration) AfterDelete ¶ added in v0.0.11
删除Hook
func (*Migration) AfterUpdate ¶ added in v0.0.11
更新Hook
func (*Migration) GetMigrateTempTable ¶ added in v0.0.11
获取迁移临时表
type PartitionUnitT ¶ added in v0.0.7
type PartitionUnitT int // 分区单元
const ( PartitionUnitDay PartitionUnitT = iota + 1 // 按天分区 PartitionUnitMonth // 按月分区 PartitionUnitYear // 按年分区 )
type VersionLog ¶ added in v0.0.14
type VersionLog struct { ID string `json:"id" gorm:"column:id;type:int;size:64;primaryKey;autoIncrement"` Version int64 `json:"version" gorm:"column:version;type:int;size:64;uniqueIndex:uk_migration,priority:1;comment:数据库版本"` MigrationName string `` /* 135-byte string literal not displayed */ CreatedAt int64 `json:"created_at" gorm:"column:created_at;type:int;size:64;autoCreateTime;comment:创建时间"` }
func (VersionLog) TableName ¶ added in v0.0.14
func (VersionLog) TableName() string
Click to show internal directories.
Click to hide internal directories.