Go语言集成mysql驱动、调用数据库、查询数据操作示例

本文实例讲述了Go语言集成mysql驱动、调用数据库、查询数据操作。分享给大家供大家参考,具体如下:

1、安装第三方mysql驱动包

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

2、连接数据库基本代码


代码如下:

package main
import (
        _"github.com/go-sql-driver/mysql"  // 注意前面的下划线_, 这种方式引入包只执行包的初始化函数
        "database/sql"
        "fmt"
)
func main()  {
        // 连接本地test数据库
        db,err := sql.Open("mysql","root:root@tcp(127.0.0.1:3306)/test?charset=utf8mb4")
        if err != nil {
                fmt.Println("连接数据库失败:"+err.Error())
                return
        }
        // 查询user表
        rows,err := db.Query("select name,age from user")
        if err != nil {
                fmt.Println("查询错误:"+err.Error())
                return
        }
        // 打印列名
        fmt.Println(rows.Columns()) // 打印:[name age] <nil>
}

4、循环扫描数据表取出数据


代码如下:

// for循环
        for rows.Next()  {
                // 定义2个变量
                var name string
                var  age int
                // 扫描行并把扫描到到数据赋值
                rows.Scan(&name,&age)
                // 打印
                fmt.Println(name,age)
        }

打印:

jack1 11
jack2 12
jack3 13
jack4 14
jack5 15
jack6 16
jack7 17
jack8 18

希望本文所述对大家Go语言程序设计有所帮助。

(0)

相关推荐

  • 在golang中操作mysql数据库的实现代码

    前言 Golang 提供了database/sql包用于对SQL数据库的访问, 作为操作数据库的入口对象sql.DB, 主要为我们提供了两个重要的功能: •sql.DB 通过数据库驱动为我们提供管理底层数据库连接的打开和关闭操作. •sql.DB 为我们管理数据库连接池 需要注意的是,sql.DB表示操作数据库的抽象访问接口,而非一个数据库连接对象;它可以根据driver打开关闭数据库连接,管理连接池.正在使用的连接被标记为繁忙,用完后回到连接池等待下次使用.所以,如果你没有把连接释放回连接池,

  • Go语言操作mysql数据库简单例子

    Go语言操作数据库非常的简单, 他也有一个类似JDBC的东西"database/sql" 实现类是"github.com/go-sql-driver/mysql" 使用过JDBC的人应该一看就懂 对日期的处理比较晦涩,没有JAVA流畅: 复制代码 代码如下: package main import (     "database/sql"     _ "github.com/go-sql-driver/mysql"     &

  • golang实现mysql数据库备份的操作方法

    背景 navicat是mysql可视化工具中最棒的,但是,在处理视图的导入导出方面,它是按照视图名称的字母顺序来处理的,若视图存在依赖,在导入过程中就会报错.前面已经用python写了一个,但在使用过程中,遇到xfffd编码,python的pymysql会直接崩溃.发现golang没有这个问题,正好用go重写,来熟悉golang. 一些关键点 map & json,在处理主键与外键信息时,需要用到json数据结构来存储中间结果,因为要灵活处理,在golang中只能用map[string]inte

  • Go语言中http和mysql的实现代码

    http 编程 Go 原生支持http: import "net/http" Go 的http服务性能和nginx比较接近: 就是说用Go写的Web程序上线,程序前面不需要再部署nginx的Web服务器,这里省掉的是Web服务器.如果服务器上部署了多个Web应用,还是需要反向代理的,一般这也是nginx或apache. 几行代码就可以实现一个web服务: package main import ( "fmt" "net/http" ) func

  • Go语言使用MySql的方法

    本文实例讲述了Go语言中使用MySql的方法.分享给大家供大家参考.具体如下: 此代码需要先安装mysql的go语言驱动. 首先安装mysql的go语言驱动: 复制代码 代码如下: go get github.com/ziutek/mymysql/godrv 示例代码如下: 复制代码 代码如下: package users import (     "database/sql"     "fmt"     _ "github.com/ziutek/mymy

  • Golang中如何对MySQL进行操作详解

    前言 Golang官方并没有提供数据库驱动,但通过database/sql/driver包来提供了实现驱动的标准接口.可以在Github上找到很多开源的驱动. 其中go-sql-driver/mysql是一个比较推荐的驱动,其完全支持database/sql接口. 使用这个驱动, 在项目里import进: import ( "database/sql" _ "github.com/go-sql-driver/mysql" ) 在正式使用database/sql包之前

  • golang gorm 操作mysql及gorm基本用法

    golang 官方的那个操作mysql的有点麻烦所以就使用了gorm,下面就gorm的使用做下简单介绍 下载gorm: go get -u github.com/jinzhu/gorm 在项目中引入gorm: import ( "github.com/jinzhu/gorm" _ "github.com/jinzhu/gorm/dialects/mysql" ) 定义db连接信息 func DbConn(MyUser, Password, Host, Db stri

  • Go语言集成mysql驱动、调用数据库、查询数据操作示例

    本文实例讲述了Go语言集成mysql驱动.调用数据库.查询数据操作.分享给大家供大家参考,具体如下: 1.安装第三方mysql驱动包 go get -u github.com/go-sql-driver/mysql 2.连接数据库基本代码 复制代码 代码如下: package main import (         _"github.com/go-sql-driver/mysql"  // 注意前面的下划线_, 这种方式引入包只执行包的初始化函数         "dat

  • python+tkinter+mysql做简单数据库查询界面

    目录 一.准备工作: 二.代码: 三.界面 四.总结 一.准备工作: 1.安装mysql3.7,创建一个test数据库,创建student表,创建列:(列名看代码),创建几条数据 (以上工作直接用navicat for mysql工具完成) 二.代码: import sys import tkinter as tk import mysql.connector as sql #--------------------查询函数--------------------------- def sql_

  • MySQL 线上数据库清理数据的方法

    01 场景分析 今天下午,开发的同事提来一个需求,需要在线上要删除一些数据记录,简单看了看数据的分布,大概是要删除数据表中的两千七百多万条记录,数据表的总记录是两千八百多万,也就是说,要删除的记录占了总记录的绝大部分比重,两千七百多万的数据记录,要是删除的话,使用的时间是相当长的,对线上的业务肯定会造成影响.这里将实际的应用案例简单重构为以下方法: mysql> select date,count(*) from test.tbl_a group by date; +----------+---

  • MySQL学习必备条件查询数据

    目录 一.条件查询 二.比较运算符 三.逻辑运算符 四.范围查询 五.空判断 六.模糊查询 七.优先级 一.条件查询 利用where语句可以对数据进行筛选 select * from 表名 where 条件; 二.比较运算符 ​ 运算符 ​ ​ 描述 ​ ​ 例子 ​ = 等于 where id = 1 \> 大于 where age > 10 < 小于 where age < 10 >= 大于等于 where age >= 10 <= 小于等于 where ag

  • MySQL数据库高级数据操作之新增数据

    目录 多数据插入 主键冲突 1.主键冲突更新 2.主键冲突替换 蠕虫复制 多数据插入 只要写一次insert,可以插入多条数据 基本语法: insert into 表名 [(字段列表)] values (值列表), (值列表)...; create table my_student( id int primary key auto_increment, name varchar(10) ); insert into my_student (name) values ('张三'), ('李四'),

  • mysql拆分字符串作为查询条件的示例代码

    目录 mysql.help_topic REPLACE LENGHT substring_index 分析 有个群友问一个问题 这表的ancestors列存放的是所有的祖先节点,以,分隔 例如我查询dept_id为103的所有祖先节点,现在我只有一个dept_id该怎么查 然后我去网上找到这样一个神奇的sql,改改表名就成了下面的这样 SELECT substring_index( substring_index( a.ancestors, ',', b.help_topic_id + 1 ),

  • Laravel框架Eloquent ORM简介、模型建立及查询数据操作详解

    本文实例讲述了Laravel框架Eloquent ORM简介.模型建立及查询数据操作.分享给大家供大家参考,具体如下: 注:以下知识点可能有不全面之处,望见谅 NO.1Eloquent ORM简介 Laravel所自带的Eloquent ORM是一个优美.简洁的ActiveRecord实现,用来实现数据库操作 每个数据表都有与之相对应的"模型(Model)"用于和数据交互 NO.2模型的建立 最基础的模型代码如下: namespace App; use Illuminate\Datab

  • C#获取微信小程序的云数据库中数据的示例代码

    目录 0 背景说明 0.1 获取AccessToken 0.2 数据库查询 0.3 文件下载 2. 简单的封装 3. 简单测试 4. 参考文档 0 背景说明 试水小程序,实现访客登记,现有.NET程序需要获取该小程序的数据 0.1 获取AccessToken 调用绝大多数后台接口时都需使用 access_token 参考小程序文档:auth.getAccessToken 发送Get请求,获取AccessToken 接口: https://api.weixin.qq.com/cgi-bin/tok

  • C# TreeView从数据库绑定数据的示例

    封装成一个函数,方便直接调用 //绑定TrreView private void InitModuleTree(DataTable dt) { //清空treeview上所有节点 this.tree_Role.Nodes.Clear(); int[] gen = new int[dt.Rows.Count]; //用于存储父节点Tag int[] zi = new int[dt.Rows.Count]; //用于存储子节点Tag for (int i = 0; i < gen.Length; i

  • JAVA实现按时间段查询数据操作

    html / jsp <span style="vertical-align: -webkit-baseline-middle;font-size:16px;font-weight:bold;">开始时间:</span>  <input name="startTime" id="startTime" type="text" class="Wdate" onfocus="

随机推荐