Documentation
¶
Overview ¶
Package migrationstate: Database migration status inspection and reporting system Provides comprehensive status view of database version, script versions and schema differences Enables users to understand current migration state before performing operations
migrationstate: 数据库迁移状态检查和报告系统 提供数据库版本、脚本版本和结构差异的综合状态视图 使用户在执行操作前了解当前迁移状态
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewStatusCmd ¶
NewStatusCmd creates cobra command that displays migration status Provides comprehensive view of current migration state
NewStatusCmd 创建显示迁移状态的 cobra 命令 提供当前迁移状态的综合视图
func ShowStatus ¶
func ShowStatus(status *Status)
ShowStatus outputs status information in a readable format Colored output improves reading experience
ShowStatus 以可读格式输出状态信息 彩色输出提升阅读体验
Types ¶
type Config ¶
type Config struct {
Param *migrationparam.MigrationParam // Migration connection // 迁移连接
ScriptsPath string // Path to migration scripts DIR // 迁移脚本目录路径
Objects []any // GORM model objects used in schema comparison // 用于结构比较的 GORM 模型对象
}
Config contains configuration options the status command needs Provides dependencies required when performing status inspection
Config 包含状态命令所需的配置选项 提供执行状态检查时所需的依赖
type Status ¶
type Status struct {
DatabaseVersion uint // Current database version // 当前数据库版本
IsDirtyFlag bool // Database dirty state flag // 数据库脏状态标志
HasMigrated bool // Migration applied flag // 迁移已应用标志
LatestScriptVersion uint // Latest version in scripts DIR // 脚本目录中的最新版本
ScriptCount int // Count of migration scripts // 迁移脚本数量
PendingCount int // Count of pending migrations // 待执行迁移数量
HasUpToDate bool // Database is at latest version flag // 数据库已是最新版本标志
PendingVersions []uint // List of pending migration versions // 待执行迁移版本列表
SchemaDiffCount int // Count of schema differences // 结构差异数量
SchemaDiffSQLs []string // SQL statements showing schema differences // 结构差异的 SQL 语句
}
Status represents the current migration status Contains relevant information needed to understand migration state
Status 表示当前迁移状态 包含理解迁移状态所需的相关信息
func GetStatus ¶
func GetStatus(db *gorm.DB, migration *migrate.Migrate, scriptsPath string, objects []any) (*Status, error)
GetStatus analyzes current migration state and returns comprehensive status Inspects database version, script versions and schema differences Returns Status struct containing relevant information
GetStatus 分析当前迁移状态并返回综合状态 检查数据库版本、脚本版本和结构差异 返回包含相关信息的 Status 结构