Go 中使用 MySQL 和 Gin 时,遇到“panic recovered:runtime error: invalid memory address or nil pointer dereference”错误,如何解决?
问题:
使用 golang 的 mysql 驱动和 gin 框架时遇到如下错误:
panic recovered: runtime error: invalid memory address or nil pointer dereference /snap/go/8489/src/database/sql/sql.go:2578 (0x4f30c2) (*stmt).execcontext: s.closemu.rlock()
原因:
该错误表明尝试在关闭的语句上执行操作。很可能是因为使用了 mysql 驱动的 stmt.exec() 而没有使用 stmt.execcontext()。
解决方法:
确保始终使用 stmt.execcontext(),即使未使用上下文参数。例如:
_, err := stmt.ExecContext(context.TODO(), req.IdCode, c.Request.RemoteAddr)
以上就是Go 中使用 MySQL 和 Gin 时,遇到“panic recovered:runtime error: invalid memory address or nil pointer dereference”错误,如何解决?的详细内容,更多请关注其它相关文章!