gpt4 book ai didi

mysql - go-sql-driver/mysql - 将 float64 插入 mariadb(双列)给出不受支持的类型 func() float64,一个 func

转载 作者:IT王子 更新时间:2023-10-29 02:30:34 26 4
gpt4 key购买 nike

我是 Go 的新手,我几天前才开始学习它的并发性:-)。我有一个不同的库,它返回一个 time.Duration 类型,它有 Seconds,一个我想使用并存储在数据库中的 float64 精度值。

以下是我要完成的相关点点滴滴:

type pResp struct {
address string
rtt time.Duration
sent int
recv int
}

stmt, err := db.Prepare("insert pings set domain = ?, packet_rtt = ?, packets_sent = ?, packets_recv = ?")
res, err := stmt.Exec(r.address, r.rtt.Seconds, r.sent, r.recv)

这是我得到的错误:

2019/08/26 19:57:35 sql: converting argument $2 type: unsupported type func() float64, a func
Process exiting with code: 0

MySQL 中的列设置为double,应该是64 位...我不确定这里哪里出错了。这是我使用的库的限制吗?谢谢。

最佳答案

看来您传递的是一流函数 func() float64 而不是实际的 float64 原语。此函数的源代码看起来是 r.rtt.Seconds,它应该被调用为 r.rtt.Seconds()。参见 Duration.Seconds .

关于mysql - go-sql-driver/mysql - 将 float64 插入 mariadb(双列)给出不受支持的类型 func() float64,一个 func,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57666204/

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