与数据库交互(以mysql为例)
• 与数据库交互我们需要安装这些包
– "github.com/go-sql-driver/mysql“
– "database/sql“
• 连接数据库:
– db,err := sql.Open("mysql","root:root@tcp(192.168.25.108:3306)/db_goals?charset=utf8")
if err!=nil {
fmt.Println("database error : ",err.Error());
}
• 查询:
– stmt1,err := db.Query("select name from tb_user2")
if err!=nil {
fmt.Println(err.Error())
}
defer stmt1.Close()
var name string
for stmt1.Next(){
err := stmt1.Scan(&name)
if err ==nil{
fmt.Println(name)
}
}
• 插入:
– stmt,err := db.Prepare("insert into tb_user2(name,password,tel)values(?,?,?)")
if err!=nil {
fmt.Println(err.Error())
}
defer stmt.Close()
if result,err := stmt.Exec("张三",11,11);err==nil {
if id,err := result.LastInsertId();err==nil {
fmt.Println("insert id : ",id)
}
}
• 与数据库交互我们需要安装这些包
– "github.com/go-sql-driver/mysql“
– "database/sql“
• 连接数据库:
– db,err := sql.Open("mysql","root:root@tcp(192.168.25.108:3306)/db_goals?charset=utf8")
if err!=nil {
fmt.Println("database error : ",err.Error());
}
• 查询:
– stmt1,err := db.Query("select name from tb_user2")
if err!=nil {
fmt.Println(err.Error())
}
defer stmt1.Close()
var name string
for stmt1.Next(){
err := stmt1.Scan(&name)
if err ==nil{
fmt.Println(name)
}
}
• 插入:
– stmt,err := db.Prepare("insert into tb_user2(name,password,tel)values(?,?,?)")
if err!=nil {
fmt.Println(err.Error())
}
defer stmt.Close()
if result,err := stmt.Exec("张三",11,11);err==nil {
if id,err := result.LastInsertId();err==nil {
fmt.Println("insert id : ",id)
}
}