gin连接mysql数据库

摘要:
=无{log.Ppanicreturn}scan://Start代码块ifrows。Next(){//如果值为真,则存在数据user:=newerr:=rows。扫描//读取行中的数据并将值分配给结构属性ifer!

1.下载驱动

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

2.数据库连接(插入和查询)

package main

import (
	"database/sql"
	"fmt"
	"github.com/gin-gonic/gin"
	_ "github.com/go-sql-driver/mysql"
	"log"
)
func main() {
	engine := gin.Default()
	//连接数据库
	constr := "root:root@tcp(127.0.0.1:3306)/ginsql"
	//打开连接
	db ,err := sql.Open("mysql",constr) //返回mysql实例db
	if err != nil {
		log.Panic(err.Error())
		return
	}
	//插入数据
	_,err = db.Exec("insert into user(name,age) values(?,?);","张三",18)
	if err != nil {
		log.Panic(err.Error())
		return
	}else{
		fmt.Println("插入成功")
	}
	//查询数据
	rows ,err := db.Query("select id,name,age from user")
	if err != nil {
		log.Panic(err.Error())
		return
	}
scan: //开始一个代码块(有风险 谨慎使用)
	if rows.Next() { //如果有值为真就是有数据
		user := new(User)
		err := rows.Scan(&user.Id,&user.Name,&user.Age) //读取rows里面的数据分别赋值给结构体属性
		if err != nil {
			log.Panic(err.Error())
			return
		}
		fmt.Println(user.Id,user.Name,user.Age)
		goto scan //再次执行  (代码块这段也可以用循环代替)
	}
	engine.Run()
}

//定义一个结构体和数据库结构一致
type User struct {
	Id int
	Name string
	Age int
}

  

免责声明:文章转载自《gin连接mysql数据库》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇经典错误::error LNK2019:无法解析的外部符号 ,该符号在函数**中被引用element-ui 复选框,实现点击表格当前行选中或取消下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

C# 异步读取数据库里面的数据与绑定UI的解决办法

异步读取数据库,在数据绑定的时候会出现点问题,就是窗体界面会无法关闭,要结束任务才能结束进程。例如下面代码 首先按习惯的方法,设定线程更新UI a2.CheckForIllegalCrossThreadCalls = false; //a2为窗体名称 下面的代码就是从数据库里取得数据并绑定 private void button1_Click(object...

达梦数据库:第一章:MySQL数据库与达梦数据库的区别

达梦数据库管理系统是达梦公司推出的具有完全自主知识产权的高性能数据库管理系统,简称DM,它具有如下特点: 1、通用性达梦数据库管理系统兼容多种硬件体系,可运行于X86、X64、SPARC、POWER等硬件体系之上。DM各种平台上的数据存储结构和消息通信结构完全一致,使得DM各种组件在不同的硬件平台上具有一致的使用特性。达梦数据库管理系统产品实现了平台无关性...

Teradata 数据库

笔者大学所学计算机专业,读书时接触过Oracle、mysql和SQL SERVER,一度坐井观天觉得数据库应该也就这些了,但自笔者毕业进入数据仓库这个行业,接触的第一个商业数据库即是Teradata,亦是接触到的第一个MPP体系架构,先简单谈谈个人对Teradata的认识吧 产品特点: 1.MPP架构,为提供商业大数据分析处理而设计构建(OLAP) 2.通...

node 爬虫 --- 将爬取到的数据,保存到 mysql 数据库中

步骤一:安装必要模块 (1)cheerio模块 ,一个类似jQuery的选择器模块,分析HTML利器。 (2)request模块,让http请求变的更加简单 (3)mysql模块,node连接mysql的模块 npm i cheerio request mysql -D 步骤二:分析爬取网址的内容 目标URL: http://zzk.cnblogs.com...

Google准实时数据仓库Mesa(一)

本文来自网易云社区 作者:王潘安 以下是本人在学习Google的Mesa数据仓库论文的记录,翻译出来给大家分享,翻译水平有限,请多多包涵。因论文比较长,本人将论文按照Mesa不同的模块分开翻译,方便阅读。 摘要:Mesa是一个可伸缩性的分析型数据仓库系统,它主要为Google的互联网广告业务服务。Mesa的设计是为了满足一系列的来自用户和系统的复杂的挑...

SQL数据库设计的命名规范

< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd> 1 相关的设计规范:1.1 采用有意义的字段名尽可能地把字段描述的清楚些。当然,也别做过头了,比如CustomerShippingAddressStreetLine1 虽然很富有说...