Go语言MySQL的简单应用(go语言 mysql)
要在 Go 中处理 MySQL 数据库,可以使用第三方包,例如 go-sql-driver/mysql。以下是一个简单的示例代码:
package main
import (
"database/sql"
"fmt"
"log"
_ "github.com/go-sql-driver/mysql"
)
func main() {
// 打开数据库连接
db, err := sql.Open("mysql", "<username>:<password>@tcp(<hostname>:<port>)/<database>")
if err != nil {
log.Fatal(err)
}
defer db.Close()
// 查询数据
rows, err := db.Query("SELECT * FROM <table>")
if err != nil {
log.Fatal(err)
}
defer rows.Close()
// 遍历结果集
for rows.Next() {
var id int
var name string
var age int
err = rows.Scan(&id, &name, &age)
if err != nil {
log.Fatal(err)
}
fmt.Printf("id: %d, name: %s, age: %d\n", id, name, age)
}
}
首先使用 sql.Open 函数打开一个 MySQL 数据库连接,并在程序结束时关闭该连接。然后使用 db.Query 函数执行一个 SQL 查询,并遍历查询结果集。可以根据需要调整 SQL 查询语句和结果集的字段类型和数量。
需要注意的是,处理 MySQL 数据库时,还需要考虑到连接池、事务处理、预处理语句等问题,具体实现方式可以参考第三方包 go-sql-driver/mysql 的文档。
相关文章
- Shell中针对字符串的切片,截取,替换,删除,大小写操作
- Python学不会来打我(8)字符串string类型深度解析
- TS类型体操,看懂你就能玩转TS了_ts l
- 你只会用 split?试试 StringTokenizer,性能可以快 4 倍
- 2025-08-22:最短匹配子字符串。用go语言,给定两个字符串 s 和 p,
- case when语句增加_case when加条件
- 一次完整的HTTP请求与响应涉及了哪些知识?
- Excel超链接点击无反应及安全提示问题
- Java 判断对象是否所有属性为空,大家觉得这样写可以吗?
- Spring事物(@transactional注解)在什么情况下会失效,为什么?