SinceNow.net

gin Mysql

Gin连接Mysql数据库

phpangel   2022-07-07 13:22:49

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

0 Comments

message
沪ICP备2024072411号 © 2022 SinceNow.net - GitHub
Login