// MysqlTest package main import ( "database/sql" "fmt" "strconv" "time" _ "github.com/go-sql-driver/mysql" ) var ( dbhost string = "127.0.0.1:3306" dbuser string = "root" dbpass string = "root" dbname string = "BaiduPanHttp" ) func main() { //初始化 db, err := sql.Open("mysql", dbuser+":"+dbpass+"@tcp("+dbhost+")/"+dbname+"?charset=utf8") defer db.Close() fmt.Println("测试Mysql操作") //查询一条 stmt, err := db.Prepare("select id,uk,uname from pan_panuser where id = ?") if err != nil { fmt.Println(err) } row := stmt.QueryRow(5) var uname string var id int var uk int err = row.Scan(&id, &uk, &uname) fmt.Print(strconv.Itoa(id) + " ") fmt.Print(strconv.Itoa(uk) + " ") fmt.Println(uname) //更新 stmt, err = db.Prepare("update pan_panuser set lastupdate = ? where id = ?") res, err := stmt.Exec(time.Now().Unix(), 5) if err != nil { fmt.Println(err) } num, err := res.RowsAffected() if err != nil { fmt.Println(err) } fmt.Println("Update Record Number:", num) //删除 stmt, err = db.Prepare("delete from pan_panuser where id = ?") res, err = stmt.Exec(6) if err != nil { fmt.Println(err) } num, err = res.RowsAffected() if err != nil { fmt.Println(err) } fmt.Println("Delete Record Number:", num) //多条记录 rows, err := db.Query("select uk,uname from pan_panuser limit 5") for rows.Next() { rows.Scan(&uk, &uname) fmt.Print(strconv.Itoa(uk) + " ") fmt.Println(uname) } defer rows.Close() fmt.Println("测试完成") }
输出:
测试Mysql操作
5 4080815635 资深设计师硬盘
Update Record Number: 1
Delete Record Number: 0
1882054243 turecola
4065528916 leo_savannah13
3155743310 老衲来阅经m
4080815635 资深设计师硬盘
测试完成