首先需要注册数据库连接
db, err := sql.Open(“mysql”, “root:root@tcp(192.168.126.129:3306)/mystu?charset=utf8”)
if err!=nil {
fmt.Println(err)
return
}
查询所有

package main

import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
)

func main() {
db, err := sql.Open("mysql", "root:root@tcp(192.168.126.129:3306)/mystu?charset=utf8")
if err!=nil {
fmt.Println(err)
return
}
rows, err := db.Query("select *from teacher ")
var id string
var name string
for rows.Next() {
rows.Scan(&id,&name)
fmt.Println(id,name)
}

}

插入

result, err := db.Exec("INSERT INTO `teacher`(`id`,`name`) VALUES('101', 'wilson')")
if err != nil {
fmt.Println("insert data failed:", err.Error())
return
}
id, err := result.LastInsertId()
if err != nil {
fmt.Println("fetch last insert id failed:", err.Error())
return
}
fmt.Println("insert new record", id)

删除

result, err := db.Exec("DELETE FROM `teacher` WHERE `id`=?", 101)
if err != nil {
fmt.Println("delete data failed:", err.Error())
return
}
num, err := result.RowsAffected()
if err != nil {
fmt.Println("fetch row affected failed:", err.Error())
return
}
fmt.Println("delete record number", num)

更新

result, err := db.Exec("UPDATE `teacher` SET `name`=? WHERE `id`=?", "jimmy", 12)
if err != nil {
fmt.Println("update data failed:", err.Error())
return
}
num, err := result.RowsAffected()
if err != nil {
fmt.Println("fetch row affected failed:", err.Error())
return
}
fmt.Println("update recors number", num)