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数据库】
推荐阅读
- py连接mysql
- 2019-01-18Mysql中主机名的问题
- MySql数据库备份与恢复
- Android|Android BLE蓝牙连接异常处理
- mysql|InnoDB数据页结构
- mysql中视图事务索引与权限管理
- MYSQL主从同步的实现
- MySQL数据库的基本操作
- 三门问题(蒙提霍尔悖论)分析与Golang模拟
- springboot整合数据库连接池-->druid