golang实现MySQL数据库的增删改查操作时间:2023-08-15    作者:lhpanda    访问:581

当在Go语言中使用MySQL数据库进行增删改查操作时,可以使用第三方库`go-sql-driver/mysql`来与MySQL进行交互。

下面是一个简单的示例代码,展示了如何使用Go语言实现MySQL数据库的增删改查操作:

首先,确保已安装`go-sql-driver/mysql`库。可以使用以下命令进行安装:

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



接下来,编写代码:

package main
import (
    "database/sql"
    "fmt"
    _ "github.com/go-sql-driver/mysql"
)
func main() {
    // 数据库连接参数
    db, err := sql.Open("mysql", "username:password@tcp(127.0.0.1:3306)/database_name")
    if err != nil {
        panic(err.Error())
    }
    defer db.Close()
    // 插入数据
    insertStmt, err := db.Prepare("INSERT INTO table_name (column1, column2) VALUES (?, ?)")
    if err != nil {
        panic(err.Error())
    }
    defer insertStmt.Close()
    _, err = insertStmt.Exec("value1", "value2")
    if err != nil {
        panic(err.Error())
    }
    fmt.Println("数据插入成功!")
    // 查询数据
    rows, err := db.Query("SELECT * FROM table_name")
    if err != nil {
        panic(err.Error())
    }
    defer rows.Close()
    // 遍历结果集
    for rows.Next() {
        var id int
        var column1 string
        var column2 string
        err = rows.Scan(&id, &column1, &column2)
        if err != nil {
            fmt.Println(err)
        }
        fmt.Println(id, column1, column2)
    }
    // 更新数据
    updateStmt, err := db.Prepare("UPDATE table_name SET column1 = ? WHERE id = ?")
    if err != nil {
        panic(err.Error())
    }
    defer updateStmt.Close()
    _, err = updateStmt.Exec("new_value", 1)
    if err != nil {
        panic(err.Error())
    }
    fmt.Println("数据更新成功!")
    // 删除数据
    deleteStmt, err := db.Prepare("DELETE FROM table_name WHERE id = ?")
    if err != nil {
        panic(err.Error())
    }
    defer deleteStmt.Close()
    _, err = deleteStmt.Exec(1)
    if err != nil {
        panic(err.Error())
    }
    fmt.Println("数据删除成功!")
}



在上面的代码中,需要将`username`替换为你的数据库用户名,`password`替换为你的数据库密码,`database_name`替换为你要连接的数据库名称,`table_name`替换为你要操作的表名称。

首先,使用`sql.Open`函数连接到MySQL数据库,并通过`db.Prepare`方法准备SQL语句。

然后,使用`Exec`方法执行插入、更新和删除操作,并检查执行结果是否出错。

接下来,使用`db.Query`方法执行SELECT语句,将查询结果存储在`rows`中,然后使用`rows.Next()`和`rows.Scan()`循环遍历结果集,读取每一行的数据。

最后,记得要及时关闭数据库连接`db.Close()`。


最新作品

机电设备控制app开发

物料编码及进出库管理系统开发

微信扫码自助物品租赁系统开发

微信答题系统开发

嵌入式程序OTA升级平台开发

重庆乐乐环保官网开发

电动葫芦产品_厂家直销_重庆沪工集团_网站开发

黑马婚纱摄影网站优化案例

重庆婚纱摄影_【婚纱照排名前十】_黑马婚纱摄影工作室_网站开发

推广产品