Verwendung von Gorm-Protokollen

Gorm gibt standardmäßig Fehler und langsames SQL aus, und Sie können die Ebene der angezeigten Protokolle anpassen.

Fügen Sie gorm.config global hinzu

package main

import (
	"gorm.io/driver/mysql"
	"gorm.io/gorm"
	"gorm.io/gorm/logger"
	"gorm.io/gorm/schema"
)

type Student struct {
	ID          uint
	StudentName string
	Age         int
}

var DB *gorm.DB

func init() {
	dsn := "root:7PXjAkY!&nlR@tcp(192.168.11.128:3306)/test?charset=utf8mb4&parseTime=True&loc=Local&timeout=10s"
	var mysqlLogger logger.Interface
	mysqlLogger = logger.Default.LogMode(logger.Info)

	db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{
		NamingStrategy: schema.NamingStrategy{
			TablePrefix:   "f_",  //表名前缀,都加上f_
			SingularTable: true,  //单数表名
			NoLowerCase:   false, //不要小写转换
		},
		SkipDefaultTransaction: true,
		Logger:                 mysqlLogger,
	})

	if err != nil {
		panic("数据库连接失败,err=" + err.Error())
	}
	//连接成功
	DB = db
}

func main() {
	DB.AutoMigrate(&Student{})
}

Die zweite Funktion zum Schreiben von Protokollen erstellt eine Sitzung und fügt sie der Sitzung hinzu

package main

import (
	"gorm.io/driver/mysql"
	"gorm.io/gorm"
	"gorm.io/gorm/logger"
	"gorm.io/gorm/schema"
)

type Student struct {
	ID          uint
	StudentName string
	Age         int
}

var DB *gorm.DB
var mysqlLogger logger.Interface

func init() {
	dsn := "root:7PXjAkY!&nlR@tcp(192.168.11.128:3306)/test?charset=utf8mb4&parseTime=True&loc=Local&timeout=10s"

	mysqlLogger = logger.Default.LogMode(logger.Info)

	db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{
		NamingStrategy: schema.NamingStrategy{
			TablePrefix:   "f_",  //表名前缀,都加上f_
			SingularTable: true,  //单数表名
			NoLowerCase:   false, //不要小写转换
		},
		SkipDefaultTransaction: true,
	})

	if err != nil {
		panic("数据库连接失败,err=" + err.Error())
	}
	//连接成功
	DB = db
}

func main() {
	DB := DB.Session(&gorm.Session{
		Logger: mysqlLogger,
	})
	DB.AutoMigrate(&Student{})
}

Der dritte Debug

func main() {
	DB.Debug().AutoMigrate(&Student{})
}

おすすめ

転載: blog.csdn.net/qq_34556414/article/details/131765170