Go语言集成mysql驱动、调用数据库、查询数据操作示例
本文实例讲述了Go语言集成mysql驱动、调用数据库、查询数据操作。分享给大家供大家参考,具体如下:
1、安装第三方mysql驱动包
go get -u github.com/go-sql-driver/mysql
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>
}
// 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语言程序设计有所帮助。
相关推荐
-
在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="
随机推荐
- js实现类似光照的炫彩文字渐变视觉冲击效果
- 通过正则表达式删除空行的方法
- 浅析Java方法传值和传引用问题
- .NET 中的 常量字段const应用介绍
- Javascript中eval函数的详细用法与说明
- ASP.NET设计网络硬盘之查看文件夹实现代码
- C#字符串常见操作总结详解
- 在JS中解析HTML字符串示例代码
- 关闭浏览器时提示onbeforeunload事件
- 详解Node全局变量global模块
- PowerShell脚本中控制Windows DNS服务的方法
- Lua实现正序和倒序的文件读取方法
- 判断对象是否Window的实现代码
- js 获取浏览器版本以此来调整CSS的样式
- javascript 常用验证函数总结
- 配置Apache支持shtml(SSI)的方法
- 全面解析java中的hashtable
- Python模拟脉冲星伪信号频率实例代码
- Linux下指定源ip进行ping操作的方法
- 利用python和百度地图API实现数据地图标注的方法