微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PostgreSQL和Golang之间的数据类型

如何解决PostgreSQL和Golang之间的数据类型

type User struct {
    Email     string `json:"email"`
    Password  string `json:"password"`
}

db,err := sql.Open("postgres",os.Getenv("DATABASE_URL"))
    if err != nil {
        log.Fatal(err)
    }

    fmt.Println("email: ",reflect.TypeOf(usr.Email)) //string
    fmt.Println("salt: ",reflect.TypeOf(salt))       //[]uint8
    fmt.Println("hash: ",reflect.TypeOf(hash))       //string

    sql := `INSERT INTO public."Users" (email,password,salt) VALUES ($1,$2,$3)`

    _,err = db.Exec(sql,usr.Email,hash,salt)

引发错误:“ pq:编码” UTF8“的字节序列无效:0x97”
我的表格:“电子邮件”类型:TEXT,“密码”类型:TEXT,“盐”类型:smallint [](认为这可能是错误的原因,但我不确定该用什么方法

解决方法

PostgreSQL bytea = [] unit8 Golang

更改类型,问题已解决!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。