首页 文章

如何使用GORM将字段的COLLATION设置为utf8_general_ci?

提问于
浏览
3

我想在MySQL数据库中有一个字符串类型的字段,它不区分大小写并且是唯一的 . 我使用了以下模型:

type User struct {
    Id             int64  `json:"id" sql:"AUTO_INCREMENT"`
    Email          string `json:"email" sql:"unique_index"`
}

这使得 Email 独一无二,但是

type User struct {
    Id             int64  `json:"id" sql:"AUTO_INCREMENT"`
    Email          string `json:"email" sql:"unique_index;COLLATION(utf8_general_ci)"`
}

似乎没有效果 .

如何使用GORM将字段的COLLATION设置为utf8_general_ci?

1 回答

  • 2

    您可以在要更改的字段中使用sql标记,如下所示:

    type User struct {
        gorm.Model
        Name `sql:"type:VARCHAR(5) CHARACTER SET utf8 COLLATE utf8_general_ci"`
    }
    

相关问题