golang 查詢資料庫(基礎版)返回資料無序,隨機的。
阿新 • • 發佈:2018-11-07
檔案目錄結構
Main.go 程式碼
Gold_db_service.go 程式碼
package service import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" ) //gold_db_service.go func PrintTest() { fmt.Println("test print.") } //查詢資料 // 為什麼每次都不一樣呢?這是因為我們使用了 map 字典來儲存列。map 是無序的,所以每次都是隨機的顯示順序。Query2() 解決這個問題。 func Query() { db, err := sql.Open("mysql", "root:
[email protected]/gift_pool") check(err) rows, err := db.Query("SELECT * FROM gift_pool.wx_activity") check(err) for rows.Next() { columns, _ := rows.Columns() scanArgs := make([]interface{}, len(columns)) values := make([]interface{}, len(columns)) for i := range values { scanArgs[i] = &values[i] } //將資料儲存到 record 字典 err = rows.Scan(scanArgs...) record := make(map[string]string) for i, col := range values { if col != nil { record[columns[i]] = string(col.([]byte)) } } fmt.Println(record) } rows.Close() } func check(err error) { if err != nil { fmt.Println(err) panic(err) } }
輸出結果:
參考:
Golang mysql
https://blog.csdn.net/lengyuezuixue/article/details/79148762