gpt4 book ai didi

go - 从 sql 数据库 Golang 获取 blob

转载 作者:IT王子 更新时间:2023-10-29 01:47:30 25 4
gpt4 key购买 nike

 import (
"database/sql"
"encoding/json"
"fmt"

_ "github.com/go-sql-driver/mysql"
)
type User struct {
Name string `json:name`
Picture []uint8 `json:picture`
}
func main(){
//straight to the query
rows, err := 'SELECT name, picture FROM ms_users' // picture is longblob type in database
checkErr(err)

var usr User
for rows.Next(){
err = rows.Scan(&usr.Name, &usr.Picture)
checkErr(err)
}
jsn, err := json.Marshal(usr)
fmt.Printf("%v, "string(jsn))
}

使用上面的代码,我只得到名称值,但图片是空的。如何将 blob 值从数据库存储到结构?任何答案将不胜感激!谢谢!

最佳答案

我对 GO 比较陌生 我在搜索类似问题的解决方案时遇到了这个问题,我找到了解决方案。

当您从数据库中获取 BLOB 数据时,您将其作为 []byte 类型获取,您的结构如下所示

type User struct {
Name string `json:name`
Picture []byte`json:picture`
}

我想你可以稍后根据需要处理字节数组。在我的例子中,我需要一个 JSON 对象,所以我将它解码为一个类型接口(interface){}变量。

关于go - 从 sql 数据库 Golang 获取 blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43921387/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com