
go 中 mysql 和 gin 操作报错
问题:
使用 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)










