使用GO语言实现Mysql数据库CURD的简单示例

yizhihongxing

以下是使用GO语言实现Mysql数据库CRUD的简单示例的完整攻略:

准备工作

  • 安装GO语言环境和MySql数据库
  • 下载安装go-sql-driver库:go get -u github.com/go-sql-driver/mysql

示例一:新增一条记录

  1. 引入依赖
import (
    "database/sql"
    "fmt"
    _ "github.com/go-sql-driver/mysql"
)
  1. 创建数据库连接
db, err := sql.Open("mysql", "root:password@tcp(localhost:3306)/dbname?charset=utf8mb4")
if err != nil {
    fmt.Errorf("failed to open db,err: %v", err)
    return
}
defer db.Close()
  1. 准备SQL语句和参数
sqlInsert := "INSERT INTO `demo` (`name`,`age`) VALUES (?,?)"
params := []interface{}{"张三", 18}
  1. 执行SQL语句
result, err := db.Exec(sqlInsert, params...)
if err != nil {
    fmt.Errorf("failed to exec query,err: %v", err)
    return
}
id, _ := result.LastInsertId()
fmt.Printf("insert id: %v\n", id)
  1. 运行程序,控制台输出insert id: x(x为自增id值)表示新增成功,数据库也会新增一条记录

示例二:查询记录

  1. 先执行示例一中的准备工作,创建数据库连接
  2. 准备SQL语句和参数
sqlSelect := "SELECT `id`,`name`,`age` FROM `demo` WHERE `id` = ?"
params := []interface{}{1}
  1. 查询记录
row := db.QueryRow(sqlSelect, params...)
var id,name string
var age int
if err := row.Scan(&id,&name,&age); err != nil {
    switch err {
    case sql.ErrNoRows:
        fmt.Println("No rows were returned.")
    default:
        fmt.Errorf("failed to scan row,err: %v", err)
    }
    return
}
fmt.Printf("id: %s\nname: %s\nage: %d", id,name,age)
  1. 运行程序,控制台输出查询结果,表示查询成功

从以上两条示例可以看出,使用GO语言实现Mysql数据库CURD的步骤大致如下:
1. 创建/打开数据库连接
2. 准备SQL语句和参数
3. 执行SQL语句
4. 处理执行结果

希望这些简单的示例能够帮助你实现更多复杂的操作,祝你好运!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用GO语言实现Mysql数据库CURD的简单示例 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • 利用PyCharm操作Github(仓库新建、更新,代码回滚)

    下面是利用PyCharm操作Github的完整攻略,包含仓库新建、更新,代码回滚的详细讲解: 1. Github仓库的新建 1.1 登录Github网站,创建新的仓库 前往Github官网,登录你的账号,在右上角点击“+”号,从下拉菜单中选择“New repository”,进入新建仓库页面。填写仓库名称、描述等信息,并选择是否设置为私有仓库,最后点击“Cr…

    GitHub 2023年5月16日
    00
  • 使用SSH快速下载Git项目的实现方法

    当我们需要下载 Git 项目时,我们通常会使用 Git 命令来克隆代码。然而,有时候我们可能会遇到网络异常或服务器故障等问题,导致下载速度变慢或者完全无法下载。这时候使用 SSH 协议来下载 Git 项目,可以提高传输速度,并且更加安全可靠。接下来,我将详细讲解使用 SSH 快速下载 Git 项目的实现方法,包括两条示例说明。 使用 SSH 快速下载 Git…

    GitHub 2023年5月16日
    00
  • 深入理解vue中slot与slot-scope的具体使用

    深入理解 Vue 中 slot 与 slot-scope 的具体使用 在 Vue 框架中,slot 是一种语法糖,它允许我们在一个组件的模板中,将子组件的内容插入到特定的位置。在使用 slot 时,我们可以为它提供名称,称之为“具名插槽”,也可以不提供名称,称之为“匿名插槽”。 在有一些使用场景下,我们还需要穿透到插槽内部的作用域,这时就可以用到 slot-…

    GitHub 2023年5月16日
    00
  • VS2019中Git源代码管理实现总结

    VS2019中Git源代码管理实现总结 Git是目前最流行的分布式版本控制系统,它可以帮助我们更好地管理项目代码。在开发过程中,使用Git作为源代码管理工具已经成为了标配。Visual Studio 2019集成了Git,可以很方便地进行源代码管理。 本文将介绍如何在VS2019中使用Git作为源代码管理工具,并提供两个示例说明。 步骤1:在VS2019中启…

    GitHub 2023年5月16日
    00
  • 使用Fabric自动化部署Django项目的实现

    下面是详细讲解使用Fabric自动化部署Django项目的实现的完整攻略。 一、Fabric介绍 Fabric(也称为Fab)是一个Python库,用于在本地或远程机器上执行系统管理员任务,如部署、配置和管理应用程序的系统。Fabric本质上是一个SSH客户端,通过SSH协议远程执行命令并自动化运维任务。 二、Fabric安装 Fabric可以通过pip安装…

    GitHub 2023年5月16日
    00
  • Git 命令详解及常用命令整理

    Git 命令详解及常用命令整理 什么是Git Git是一款免费、开源的分布式版本控制工具,是现今最为流行的代码管理工具之一。它不仅简单易用,而且功能强大,是程序员必备的工具之一。 Git的安装 在Linux上安装Git 在终端中输入以下命令: $ sudo apt-get update $ sudo apt-get install git 在Windows上…

    GitHub 2023年5月16日
    00
  • git如何还原到某次commit并强制推送远程

    如何还原到某次commit并强制推送远程 如果我们在使用Git进行版本控制的过程中,由于一些原因需要还原到某次commit,同时又需要强制推送到远程仓库,这时候就需要用到以下两条命令: 1. git reset git reset命令可以将HEAD指针指向指定的commit,并将工作区和暂存区的内容回退到指定的commit状态。具体示例如下: $ git r…

    GitHub 2023年5月16日
    00
  • 聊聊Go语言编译github上的项目遇到的坑

    下面我将为您详细讲解一下在编译Github上的Go语言项目时可能会遇到的一些问题以及解决办法。 问题一:缺少依赖包 在编译Github上的Go语言项目时,有时会出现缺少依赖包的情况。这通常是因为这些依赖包并没有被直接引用,而是在其他依赖包中被引用。这种情况下,我们需要手动安装这些依赖包。 例如,我们要编译一个名为“gin-vue-admin”的项目。在编译时…

    GitHub 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部