golang mysql Scan操作按顺序取值问题

Python019

golang mysql Scan操作按顺序取值问题,第1张

rows, err := db.Query("SELECT * FROM user")

checkErr(err)

for rows.Next() {

var userId int

var userName string

var userAge int

var userSex int

rows.Columns()

err = rows.Scan(&userId, &userName, &userAge, &userSex)

checkErr(err)

fmt.Println(userId)

fmt.Println(userName)

fmt.Println(userAge)

fmt.Println(userSex)

}

Go 语言中的 for 循环不会按照顺序输出,因为它不是一个有序的过程。for 循环采用的是“基于条件的循环”,而不是“基于步长的循环”。这意味着当条件满足时,for 循环会执行一次,而不是每次都按照指定的步长执行一次。