聊聊go xorm生成mysql的结构体问题

 更新时间:2022年03月16日 15:35:55   作者:浮.尘  
这篇文章主要介绍了go xorm生成mysql的结构体问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

网上很多资源都说是xorm reverse mysql "root:123456@tcp(127.0.0.1:3306)/users?charset=utf8" ./

执行后报错:2022/03/16 15:00:53 [Error] reverse.go:196 Unknown colType INT UNSIGNED

实际上原有的xorm 已经不能用了,现在要这么用:

go get xorm.io/reverse

然后进入到GOPATH下面的bin目录

vi custom.yml,用来配置连接数据库的信息:

kind: reverse
name: users
source:
  database: mysql
  conn_str: 'root:123456@tcp(127.0.0.1:3306)/users?parseTime=true'
targets:
- type: codes
  language: golang
  output_dir: ./testoutput

执行:./reverse -f custom.yml

然后进入testoutput/ 目录下,就生成好了models.go文件:

package models

type UserInfo struct {
        Id         uint   `xorm:"not null pk autoincr comment('主键ID') UNSIGNED INT"`
        Name       string `xorm:"not null default '' comment('姓名') VARCHAR(50)"`
        Avatar     string `xorm:"not null default '' comment('头像') VARCHAR(255)"`
        Birthday   string `xorm:"not null default '' comment('出生日期') VARCHAR(50)"`
        Sex        int    `xorm:"not null default 0 comment('性别:0未知,1男,2女') TINYINT(1)"`
        City       string `xorm:"not null default '' comment('所在城市') VARCHAR(50)"`
        Introduce  string `xorm:"comment('自我介绍') TEXT"`
        Status     int    `xorm:"not null default 0 comment('状态:0正常,1禁用') TINYINT(1)"`
        CreateTime uint   `xorm:"not null default 0 comment('创建时间') UNSIGNED INT"`
        UpdateTime uint   `xorm:"not null default 0 comment('最后修改时间') UNSIGNED INT"`
        DeleteTime uint   `xorm:"not null default 0 comment('删除时间') UNSIGNED INT"`
}

到此这篇关于go xorm生成mysql的结构体的文章就介绍到这了,更多相关go xorm结构体内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Go语言实战之详细掌握正则表达式的应用与技巧

    Go语言实战之详细掌握正则表达式的应用与技巧

    正则表达式是一种从左到右与主题字符串匹配的模式,正则表达式用于替换字符串中的文本,验证表单,基于模式匹配从字符串中提取子字符串等等,这篇文章主要给大家介绍了关于Go语言实战之详细掌握正则表达式的应用与技巧,需要的朋友可以参考下
    2023-12-12
  • 详解Golang中select的使用与源码分析

    详解Golang中select的使用与源码分析

    select 是 Go 提供的 IO 多路复用机制,可以用多个 case 同时监听多个 channl 的读写状态。本文将从源码角度带大家了解一下select的使用,需要的可以参考一下
    2022-12-12
  • Golang中常见的三种并发控制方式使用小结

    Golang中常见的三种并发控制方式使用小结

    这篇文章主要为大家详细介绍了如何对goroutine并发行为的控制,在Go中最常见的有三种方式:sync.WaitGroup、channel和Context,下面我们就来看看他们的具体使用吧
    2024-01-01
  • 一文搞懂Go语言标准库strconv

    一文搞懂Go语言标准库strconv

    strconv包实现了基本数据类型和其字符串表示的相互转换,本文主要介绍Go语言标准库strconv,想要学习strconv标准库的可以了解一下
    2023-04-04
  • 在goland中配置gofmt的操作

    在goland中配置gofmt的操作

    这篇文章主要介绍了在goland中配置gofmt的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • Go项目的目录结构详解

    Go项目的目录结构详解

    这篇文章主要介绍了Go项目的目录结构,对基础目录做了讲解,对项目开发中的其它目录也一并做了介绍,需要的朋友可以参考下
    2014-10-10
  • golang结构化日志log/slog包之LogValuer的用法简介

    golang结构化日志log/slog包之LogValuer的用法简介

    这篇文章主要为大家详细介绍了golang结构化日志log/slog包中 LogValuer 和日志记录函数的正确包装方法,感兴趣的小伙伴可以跟随小编一起了解一下
    2023-10-10
  • GO中使用谷歌GEMINI模型任务代码实例

    GO中使用谷歌GEMINI模型任务代码实例

    这篇文章主要为大家介绍了GO中使用谷歌GEMINI模型任务代码实例探究,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • Go语言中iota的具体使用

    Go语言中iota的具体使用

    Go语言中,iota是一个用于生成一系列相关常量值的常量生成器,常应用于枚举、位操作等场景,广泛用于定义HTTP状态码、权限控制等,本文就来介绍一下iota的具体使用,感兴趣的可以了解一下
    2024-11-11
  • 一文解析 Golang sync.Once 用法及原理

    一文解析 Golang sync.Once 用法及原理

    这篇文章主要介绍了一文解析 Golang sync.Once 用法及原理,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-08-08

最新评论