我是golang的新手,我不明白为什么我不能返回值。我认为这是一个小错误。我只想返回我在数据库中选择的字符串。func myFunction() string { rows, err := db.Query("SELECT my_string ORDER BY agents_count ASC LIMIT 1;") if err != nil { logger.Fatal(err) } defer rows.Close() for rows.Next() { var my_string string if err := rows.Scan(&my_string); err != nil { logger.Fatal(err) } logger.Info("Result : ", my_string) } if err := rows.Err(); err != nil { logger.Fatal(err) } return my_string}有什么想法吗?我的错误是什么?
2 回答
潇湘沐
TA贡献1816条经验 获得超6个赞
只需将my_string移动到外循环
func myFunction() string {
rows, err := db.Query("SELECT my_string ORDER BY agents_count ASC LIMIT 1;")
if err != nil {
logger.Fatal(err)
}
defer rows.Close()
var my_string string
for rows.Next() {
if err := rows.Scan(&my_string); err != nil {
logger.Fatal(err)
}
logger.Info("Result : ", my_string)
}
if err := rows.Err(); err != nil {
logger.Fatal(err)
}
return my_string
}
- 2 回答
- 0 关注
- 132 浏览
添加回答
举报
0/150
提交
取消
