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 }