有没有办法创建奇异名称DB表?

时间:2018-01-16 11:27:09

标签: mysql go go-gorm

  • 开发环境
    Lnaguage:Golang ver.1.9.2
    DB:mySQL
    框架:未决定(也许我会使用狂欢)

  • 情况
    我已经拥有了具有奇异名称表的DB,例如“user”,“page”。它无法改变。

    现在我将使用此DB开发新的应用程序。 我创建了简单的应用程序来连接这个数据库,并尝试使用gorm(https://github.com/jinzhu/gorm)进行自动迁移。 我定义了一些模型,比如“user”,它与现有的DB表名相同,并运行自动迁移,就像它写入(http://jinzhu.me/gorm/database.html#connecting-to-a-database

    一样

    db.Set(“gorm:table_options”,“ENGINE = InnoDB”)。AutoMigrate(& User {})

    然后,创建了新表“users”。

  • 问题 我可以创建单一名称表,例如“自动迁移的用户”还是那些东西? 使用gorm不是必需的,因此如果有效,我将使用另一个orm库。

我希望有人帮助我!

2 个答案:

答案 0 :(得分:2)

在struct TableName上实现函数User以返回表的自定义名称。 ORM使用此函数获取所有数据库操作的表名。

func (user *User) TableName() string {
    return "user"
}

请参阅此处的文档:http://jinzhu.me/gorm/models.html#table-name-is-the-pluralized-version-of-struct-name

答案 1 :(得分:2)

您已使用db实例设置使用单数表,如下所示: db.SingularTable(true)