didi / gendry

a golang library for sql builder
Apache License 2.0
1.6k stars 191 forks source link

对rows进行scan后, 需要检查err #138

Closed xxxsen closed 6 months ago

xxxsen commented 1 year ago

https://github.com/didi/gendry/blob/dbb28729cc7e35e802b6b3df5084799518b8f72b/scanner/scanner.go#L320

通常来说, 使用下面代码扫描,扫描完后,需要补一个rows.Err()的检查, 否则可能会出现链接异常中断导致扫出来的数据少一部分的情况。

for rows.Next() {
    if err := rows.Scan(...); err != nil {
        ...
    }
}
if err := rows.Err(); err != nil {
    //TODO: check err here
}