结果集获取¶
- 1 Row查询结果
Row查询结果中最多能获取一行,使用Row.Scan(dest ...interface{})将当前行的一列或多列复制到dest指定的值中,并返回错误信息。如果有多行匹配该查询,Row.Scan 将使用第一行并丢弃其余行。如果没有与查询匹配的行,Row.Scan 将返回 ErrNoRows。Row.Scan的其它信息参见Rows.Scan。
- 2 Rows查询结果
- Rows查询结果中包含多行。
- 使用Rows.Next()前进到下一行。成功返回true,没有下一行或者发生错误返回false,需根据错误来区分这两种情况。
- 使用Rows.Scan(dest ...interface{})函数将当前行的一列或多列复制到dest指定的值中,dest的值的数量必须与SQL语句返回的列数相同。同时Rows.Scan()函数会返回错误信息。同时每次调用Rows.Scan之前,都应该先调用Rows.Next函数,即使是第一次调用。
- 结果集获取完毕后,使用Rows.Close()关闭。如果调用 Rows.Next 并返回 false,而且没有其他结果集,则会自动关闭 Rows 并检查 Err 的结果。