1. 程式人生 > >golang 查詢資料庫(基礎版)返回資料無序,隨機的。

golang 查詢資料庫(基礎版)返回資料無序,隨機的。

檔案目錄結構

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