Go语言入门心法(十二): GORM映射框架

Go语言入门心法(十二): GORM映射框架_第1张图片



Go语言入门心法(一): 基础语法

Go语言入门心法(二): 结构体

Go语言入门心法(三): 接口

Go语言入门心法(四): 异常体系

 Go语言入门心法(五): 函数

Go语言入门心法(六): HTTP面向客户端|服务端编程

Go语言入门心法(七): 并发与通道

Go语言入门心法(八): mysql驱动安装报错onnection failed

Go语言入门心法(九): 引入三方依赖

Go语言入门心法(十):Go语言操作MYSQL(CRUD)|事务处理

Go语言入门心法(十一): 文件处理




 一: ORM映射框架认知 


安装依赖:

S D:\program_file\go_workspace> go get   gorm.io/gorm
PS D:\program_file\go_workspace> go get  gorm.io/driver/sqlite
PS D:\program_file\go_workspace> go get  gorm.io/driver/mysql

PS D:\program_file\go_workspace> go get  github.com/jinzhu/gorm
 


二: 检查数据连接情况


package main

import (
	"github.com/jinzhu/gorm"
	_ "github.com/jinzhu/gorm/dialects/mysql"
	"log"
)

func main() {
	db, err := gorm.Open("mysql", "root:123456@tcp(127.0.0.1:3306)/tope-pay-user?charset=utf8&parseTime=True&loc=Local")
	//延时关闭数据库连接
	defer db.Close()
	// 设置最大连接数
	db.DB().SetMaxOpenConns(100)
	// 设置最大闲置数据
	db.DB().SetMaxIdleConns(10)
	gormDatabaseLinkCheckErr(err)
	// 通过ping检查数量是否成功
	err = db.DB().Ping()
	gormDatabaseLinkCheckErr(err)
	log.Println("数据库连接成功! ")

}

// 定义结构体
type gormUser struct {
	ID       uint   `json:"id"`
	Phone    string `json:"phone"`
	Name     string `json:"name"`
	Password string `json:"password"`
}

func gormDatabaseLinkCheckErr(err error) {
	if err != nil {
		log.Fatal("系统异常: ", err.Error())
	}
}

运行效果:


GOROOT=D:\program_file_worker\go1.20 #gosetup
GOPATH=D:\program_file_worker\go1.20\bin;C:\Users\Administrator\go #gosetup
D:\program_file_worker\go1.20\bin\go.exe build -o C:\Users\Administrator\AppData\Local\Temp\GoLand\___go_build_OOPGormToDatabaseGrammar_go.exe D:\program_file\go_workspace\org.jd.data\gorm\OOPGormToDatabaseGrammar.go #gosetup
C:\Users\Administrator\AppData\Local\Temp\GoLand\___go_build_OOPGormToDatabaseGrammar_go.exe
2023/10/22 14:15:46 数据库连接成功! 

Process finished with the exit code 0
 

忙着去耍帅,后期补充完整........

你可能感兴趣的:(golang,开发语言,后端,Gorm映射框架认知升维)