【发布时间】:2016-01-02 18:03:46
【问题描述】:
默认的goose go 迁移准备了一个提供*sql.Tx 的函数:
提供了一个事务,而不是直接提供数据库实例,因为 goose 还需要在同一事务中记录架构版本。每次迁移都应作为单个事务运行以确保数据库完整性,因此无论如何这是一个好习惯。
我想使用gorm migrations 编写我的迁移,但我不确定如何使用给定的事务来实现该目的。这是一个例子:
func Up_20151230135812(txn *sql.Tx) {
txn.CreateTable(&User{})
}
该版本按预期给了我txn.CreateTable undefined (type *sql.Tx has no field or method CreateTable)。如何获取交易以与 gorm 一起使用?
【问题讨论】:
标签: go database-migration go-gorm