iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >go连接mysql的方法是什么
  • 945
分享到

go连接mysql的方法是什么

2023-07-05 17:07:11 945人浏览 薄情痞子
摘要

今天小编给大家分享一下Go连接mysql的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、Mysql建表创建us

今天小编给大家分享一下Go连接mysql的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

一、Mysql建表

创建user表

CREATE TABLE `user` (  `user_id` int NOT NULL AUTO_INCREMENT,  `user_name` varchar(100) DEFAULT NULL,  `user_code` varchar(100) NOT NULL,  `passWord` varchar(100) NOT NULL,  PRIMARY KEY (`user_id`),  UNIQUE KEY `user_user_code_IDX` (`user_code`) USING BTREE) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

二、mysql驱动下载

新建一个项目目录 wms

打开cmd命令窗口,进入wms目录

go连接mysql的方法是什么

初始化项目

go mod init fa.com/wms

go mod init 初始化命令,fa.com/wms 为模块路径

go连接mysql的方法是什么

下载go驱动

go get GitHub.com/go-sql-driver/mysql@latest

执行go get 命令下载最新版本的go mysql驱动

go连接mysql的方法是什么

三、mysql连接参数配置

新建mysqlutil.go,用来建立mysql连接

package dbimport ("database/sql""fmt""time"//注册驱动器 _下划线表示执行驱动中的init函数,不使用其他函数_ "github.com/go-sql-driver/mysql")// 创建数据库连接func ConnMySQL() *sql.DB {// 数据源名driverName := "mysql"// 用户名root// 密码1234// tcp协议连接// 数据库地址// 数据库 wmsdataSourceName := "root" + ":" + "1234" + "@" + "tcp" + "(" + "127.0.0.1:3306" + ")" + "/" + "wms"db, err := sql.Open(driverName, dataSourceName)if err != nil {panic(err)}// 数据库设置db.SetConnMaxLifetime(time.Minute * 10)db.SetConnMaxIdleTime(time.Minute * 10)db.SetMaxOpenConns(10)db.SetMaxIdleConns(10)// 连接测试err = db.Ping()if err != nil {fmt.Println("数据库连接失败")panic(err)}return db}

四、mysql新增数据

新建user.go

// 包名package userimport ("log"// 引入mysql数据库连接包"fa.com/wms/db")// 定义user类型结构体type User struct {UserId   intUserName stringUserCode stringPassword string}// 向数据库新增一个User数据func AddUser(u *User) {// 调用db包ConnMySQL()db := db.ConnMySQL()// 预编译保存sql创建 statementstmt, err := db.Prepare("INSERT INTO `user`(user_name, user_code, password) VALUES (?, ?, ?)")// err 不等空则statement创建失败if err != nil {// 打印错误信息log.Fatal(err)// 抛出错误信息,阻止程序继续运行panic(err)}// 在函数运行结束时关闭statementdefer stmt.Close()// 执行保存sql// _下划线 表示忽略函数返回的sql.Result值_, err = stmt.Exec(u.UserName, u.UserCode, u.Password)if err != nil {// 打印错误信息log.Fatal(err)// 抛出错误信息,阻止程序继续运行panic(err)}}

五、mysql删除数据

func DeleteById(userId int) {db := db.ConnMySQL()// 预编译删除sql创建 statementstmt, err := db.Prepare("delete from `user`  where user_id = ?")// err 不等空则statement创建失败if err != nil {// 打印错误信息log.Fatal(err)// 抛出错误信息,阻止程序继续运行panic(err)}// 在函数运行结束时关闭statementdefer stmt.Close()// 执行删除sql// _下划线 表示忽略函数返回的sql.Result值_, err = stmt.Exec(userId)if err != nil {// 打印错误信息log.Fatal(err)// 抛出错误信息,阻止程序继续运行panic(err)}}

六、mysql修改数据

func UpdateUser(u *User) {db := db.ConnMySQL()// 预编译更新sql创建 statementstmt, err := db.Prepare("UPDATE `user` SET user_name=?, user_code=?, password=? WHERE user_id=?")// err 不等空则statement创建失败if err != nil {// 打印错误信息log.Fatal(err)// 抛出错误信息,阻止程序继续运行panic(err)}// 在函数运行结束时关闭statementdefer stmt.Close()// 执行更新sql// _下划线 表示忽略函数返回的sql.Result值_, err = stmt.Exec(u.UserName, u.UserCode, u.Password, u.UserId)if err != nil {// 打印错误信息log.Fatal(err)// 抛出错误信息,阻止程序继续运行panic(err)}}

七、mysql查询数据

func QueryUserByCode(code string) []User {// 调用db包ConnMySQL()db := db.ConnMySQL()// 预编译查询sql创建 statementstmt, err := db.Prepare("SELECT user_id, user_name, user_code, password FROM `user` WHERE user_code= ?")if err != nil {log.Fatal(err)panic(err)}defer stmt.Close()// 执行查询sql,返回查询结果rowsrows, err := stmt.Query(code)if err != nil {// 打印错误信息log.Fatal(err)// 抛出错误信息,阻止程序继续运行panic(err)}// 定义User切片s := make([]User, 0)// 遍历rowsfor rows.Next() {u := User{}// 扫描rows的每一列并保存数据到User对应字段err := rows.Scan(&u.UserId, &u.UserName, &u.UserCode, &u.Password)if err != nil {// 打印错误信息log.Fatal(err)// 抛出错误信息,阻止程序继续运行panic(err)},// 扫描后的user加入到切片s = append(s, u)}return s}

以上代码使用vscode编写,目录结构如下图所示:

go连接mysql的方法是什么

以上就是“go连接mysql的方法是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: go连接mysql的方法是什么

本文链接: https://www.lsjlt.com/news/354107.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • go连接mysql的方法是什么
    今天小编给大家分享一下go连接mysql的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、mysql建表创建us...
    99+
    2023-07-05
  • django连接mysql的方法是什么
    连接MySQL数据库的方法可以通过以下步骤实现:1. 安装MySQL驱动:在Django项目的虚拟环境中安装MySQL驱动,如`my...
    99+
    2023-10-11
    django mysql
  • Navicat连接MySQL的方法是什么
    这篇文章主要介绍“Navicat连接MySQL的方法是什么”,在日常操作中,相信很多人在Navicat连接MySQL的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2022-10-18
  • IDEA连接mysql的方法是什么
    本文小编为大家详细介绍“IDEA连接mysql的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“IDEA连接mysql的方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。任务管理器打开mysql服...
    99+
    2023-07-05
  • MySQL连接查询的方法是什么
    这篇文章主要介绍“MySQL连接查询的方法是什么”,在日常操作中,相信很多人在MySQL连接查询的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL连接查询的...
    99+
    2022-10-19
  • PHP与MySQL连接的方法是什么
    本文小编为大家详细介绍“PHP与MySQL连接的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“PHP与MySQL连接的方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、MySQL扩展PHP的...
    99+
    2023-07-04
  • MySQL内连接查询的方法是什么
    本篇内容介绍了“MySQL内连接查询的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!内连接也叫连接,是最早的一种连接。还可以被称为...
    99+
    2023-06-27
  • Go连接池设计与实现的方法是什么
    这篇“Go连接池设计与实现的方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Go连接池设计与实现的方法是什么”文章吧...
    99+
    2023-07-06
  • asp连接mysql数据库的方法是什么
    在ASP中连接MySQL数据库有多种方法,以下是常见的两种方法:1. 使用ADODB连接对象(ActiveX Data Object...
    99+
    2023-10-08
    asp mysql数据库
  • mysql虚拟主机连接的方法是什么
    要连接MySQL虚拟主机,需要使用以下步骤:1. 确认MySQL虚拟主机的IP地址和端口号。2. 使用MySQL客户端连接虚拟主机,...
    99+
    2023-06-06
    mysql虚拟主机 虚拟主机
  • JSP连接MySql数据库的方法是什么
    这篇“JSP连接MySql数据库的方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“JSP连接MySql数据库的方法是...
    99+
    2023-06-27
  • mysql远程连接配置的方法是什么
    配置MySQL远程连接的方法如下:1. 在MySQL服务器上,打开`my.cnf`文件。在Linux上通常位于`/etc/mysql...
    99+
    2023-08-16
    mysql
  • MySQL内连接、外连接及SQL JOINS的实现方法是什么
    这篇文章主要讲解了“MySQL内连接、外连接及SQL JOINS的实现方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL内连接、外连接及SQL JOINS...
    99+
    2023-07-05
  • MySQL外连接语法是什么
    这篇文章主要介绍了MySQL外连接语法是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MySQL外连接语法是什么文章都会有所收获,下面我们一起来看看吧。前言外连接可以分为左外连接和右外连接左外连接: 包含左...
    99+
    2023-06-29
  • xshell连接linux的方法是什么
    要连接Linux使用Xshell,您可以按照以下步骤进行操作:1. 首先,确保您已经安装了Xshell软件。如果尚未安装,您可以在官...
    99+
    2023-09-09
    xshell linux
  • eclipse连接mongodb的方法是什么
    要在Eclipse中连接MongoDB,你需要使用MongoDB的Java驱动程序。以下是连接MongoDB的步骤:1. 在Ecli...
    99+
    2023-09-12
    mongodb eclipse
  • python连接kafka的方法是什么
    要连接Kafka,可以使用Kafka-Python库。以下是一个简单的示例代码,演示如何连接Kafka并发送消息:```python...
    99+
    2023-09-14
    python kafka
  • nodejs连接ssh的方法是什么
    在Node.js中连接SSH的方法有几种,以下是其中一种常用的方法:1. 使用ssh2模块:ssh2模块是一个基于OpenSSH的S...
    99+
    2023-09-26
    nodejs ssh
  • window连接mysql的方法
    小编给大家分享一下window连接mysql的方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!window下连接mysql的方法:首先按快捷键【win+R】键来进入运行,并输入cmd;然后键...
    99+
    2022-10-18
  • navicat连接mysql的方法
    这篇文章主要介绍了navicat连接mysql的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.首先你电脑上必须安装了mysql的数据...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作