golang连接mysql数据库

1.安装golang的开发环境点击打开链接


2.下载github开源的mysql驱动:

go get github.com/go-sql-driver/mysql

如果无法下载建议连接VPN。


3.mysql的连接,建议查看相关的源码database/sql,了解相关的函数,特别是理解Rows和Row的概念,第一次接触不是很好理解,
了解之后你会发现封装的挺好的。

db, err := sql.Open("mysql", "root:123456@tcp(localhost:3306)/test?charset=utf8")


连接的方式变化不大,mysql为驱动名,root为mysql数据的用户名,123456为密码,tcp(localhost:3306)为数据库的地址,test为数据库名。


4.先来了解一下database/sql.go文件中的Rows struct:
rows, err := db.Query("select id, companyname from baseinfo") defer rows.Close() for rows.Next() { var id int var name string err = rows.Scan(&id, &name) fmt.Printf("rows id = %d, value = https://www.it610.com/article/%s", id, name) }


具体demo代码如下:

package mainimport _ "github.com/go-sql-driver/mysql" import "database/sql" import "fmt"func main() { db, err := sql.Open("mysql", "root:123456@tcp(localhost:3306)/test?charset=utf8") if err != nil { panic(err.Error()) } defer db.Close() err = db.Ping() if err != nil { panic(err.Error()) } rows, err := db.Query("select id, companyname from baseinfo") defer rows.Close() for rows.Next() { var id int var name string err = rows.Scan(&id, &name) fmt.Printf("rows id = %d, value = https://www.it610.com/article/%s", id, name) } err = rows.Err() if err != nil { panic(err.Error()) } }



【golang连接mysql数据库】












    推荐阅读