在 Go 语言中连接 MySQL 数据库通常使用第三方库。目前比较流行的 MySQL 客户端库包括 github.com/go-sql-driver/mysql
、github.com/go-xorm/xorm
、github.com/jmoiron/sqlx
等。下面是一个使用 github.com/go-sql-driver/mysql
库连接 MySQL 数据库的简单示例:
首先,需要安装 MySQL 客户端库:
go get -u github.com/go-sql-driver/mysql
然后,可以编写 Go 代码连接到 MySQL 数据库并执行查询操作:
go
package main
import (
"database/sql"
"fmt"
"log"
_ "github.com/go-sql-driver/mysql"
)
func main() {
// MySQL 数据库连接信息
db, err := sql.Open("mysql", "username:password@tcp(localhost:3306)/dbname")
if err != nil {
log.Fatal(err)
}
defer db.Close()
// 执行查询操作
rows, err := db.Query("SELECT * FROM users")
if err != nil {
log.Fatal(err)
}
defer rows.Close()
// 遍历查询结果
for rows.Next() {
var id int
var name string
if err := rows.Scan(&id, &name); err != nil {
log.Fatal(err)
}
fmt.Printf("ID: %d, Name: %s\n", id, name)
}
if err := rows.Err(); err != nil {
log.Fatal(err)
}
}
在上面的示例中,首先导入 github.com/go-sql-driver/mysql
包,然后使用 sql.Open()
函数连接到 MySQL 数据库。在连接字符串中指定 MySQL 数据库的用户名、密码、主机和端口号以及要连接的数据库名称。然后使用 db.Query()
函数执行 SQL 查询,并使用 rows.Scan()
函数将查询结果扫描到变量中。
需要注意的是,示例中的连接字符串中的 username
、password
、localhost:3306
、dbname
等信息需要替换为实际的 MySQL 数据库连接信息。
另外,还可以根据具体项目需求使用其他 MySQL 客户端库,如 github.com/go-xorm/xorm
、github.com/jmoiron/sqlx
等。这些库提供了更高级的功能和更便捷的操作方式。