github.com/qiuhoude/go-web@v0.0.0-20220223060959-ab545e78f20d/prepare/04_database/demo2_mysql/demo_sqlx.go (about)

     1  // sql扩展包
     2  package demo2_mysql
     3  
     4  import (
     5  	"fmt"
     6  	_ "github.com/go-sql-driver/mysql"
     7  	"github.com/jmoiron/sqlx"
     8  )
     9  
    10  type User2 struct {
    11  	uid        int
    12  	username   string
    13  	departname string
    14  	created    string
    15  }
    16  
    17  // sql的扩展包
    18  func run() {
    19  	db, err := sqlx.Open("mysql", "root:root@tcp(127.0.0.1:3306)/go_test?charset=utf8")
    20  	if err != nil {
    21  		fmt.Println("open mysql failed,", err)
    22  		return
    23  	}
    24  	defer db.Close()
    25  	var Db *sqlx.DB
    26  	Db = db
    27  	var users []User2
    28  	err = Db.Select(&users, "SELECT uid,username,departname,created FROM userinfo")
    29  	if err != nil {
    30  		fmt.Println("Select error", err)
    31  	}
    32  	fmt.Printf("this is Select res:%v\n", users)
    33  
    34  	//var user User
    35  	//err1 := Db.Get(&user, "SELECT uid,username,departname,created FROM userinfo where uid = ?", 1)
    36  	//if err1 != nil {
    37  	//	fmt.Println("GET error :", err1)
    38  	//} else {
    39  	//	fmt.Printf("this is GET res:%v", user)
    40  	//}
    41  }