sqlrowssqlrows是一个静态代码分析器,它通过报告sql.Rows使用错误的诊断信息来帮助发现错误。
安装您可以通过goget命令获取sqlrows。
$goget-ugithub.com/gostaticanalysis/sqlrows快速开始当Go为1.12或更高版本时,sqlrows使用govet运行,如下所示。
$govet-vettool=$(whichsqlrows)github.com/you/sample_api/...当Go低于1.12时,只需使用包名称(导入路径)运行sqlrows命令。
但是它不能接受--tags某些选项。
$sqlrowsgithub.com/you/sample_api/...分析仪使用*sql.Rows时,sqlrows检查一个常见错误。
首先,必须在defer函数中调用rows.Close()。
如果您意外无法扫描记录并忘记关闭*sql.Rows则将不会重用连接。
rows,err:=db.QueryContext(ctx,"SELECT*
1