beego migrate 使用记录

1、生成迁移文件

// 命令格式
bee generate migration [migrationfile] [-fields="name:type"]

// 示例
bee generate migration user

2、完成迁移脚本

// Run the migrations
func (m *User_20220406_155638) Up() {
	m.CreateTable("user", "innodb", "utf8mb4")
	m.PriCol("id").SetAuto(true).SetDataType("int(11)").SetUnsigned(true)
	m.NewCol("nickname").SetDataType("varchar(255)").SetNullable(false)
	m.NewCol("avatar").SetDataType("varchar(32)").SetDefault("''").SetNullable(false)
	m.NewCol("status").SetDataType("tinyint(1)").SetUnsigned(true).SetDefault("1").SetNullable(false)
	m.NewCol("created_at").SetDataType("int(11)").SetUnsigned(true).SetNullable(false)
	m.NewCol("updated_at").SetDataType("int(11)").SetUnsigned(true).SetNullable(false)
	m.SQL(m.GetSQL())
}

// Reverse the migrations
func (m *User_20220406_155638) Down() {
	m.SQL("DROP TABLE IF EXISTS user")
}

此处注意默认空字符的写法,SetDefault("''")

执行迁移命令

// 命令格式
bee migrate [-driver=mysql] [-conn="root:@tcp(127.0.0.1:3306)/test"] [-dir="path/to/migration"]

// 示例
bee migrate -conn="root:password@tcp(127.0.0.1:3306)/database"

默认是mysql数据库,无需添加参数,默认路径也无需修改

出现类似的一下提示,missing go.sum entry for module providing package,请执行

go mod tidy
posted @   传VV说  阅读(204)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示