go語言查詢mysql
對於Query而言,沒有數據是不會返回error,同時sql.rows也沒有返回關於長度的屬性,因此只能自己遍歷rows屬性,這是比較操蛋的事情,對比而言QueryRow就相對於友好一點,如果沒有返回結果,error的值會是sql.ErrNoRows,因此,判斷這個值就能得到數據庫中是否有我們需要的那個數據.。
var name string
err := db.QueryRow(`select name from user where uid=7`).Scan(&name) //db爲sql.DB
if err == sql.ErrNoRows {
log.Print("沒有結果")
} else {
log.Print("youjieguo:",name)
}