package main import ( "fmt" "go.uber.org/zap" "gorm.io/driver/mysql" "gorm.io/gorm" "gorm.io/gorm/logger" "jygit.jydev.jianyu360.cn/data_processing/common_utils/log" "testing" ) func TestOrder(T *testing.T) { username := "root" password := "123" host := "127.0.0.1:3306" // 本地 //host := "172.17.162.27:14000" //线上 database := "test" dsn := fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8mb4&parseTime=True&loc=Local", username, password, host, database) // 连接到数据库 db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{ Logger: logger.Default.LogMode(logger.Error), //不打印日志 }) if err != nil { log.Info("dealAllDataAccountOrder, Rows Error", zap.Error(err)) return } rows, err := db.Debug().Model(&DataexportOrder{}).Where("autoUpdate < ?", endTime). Order("id desc").Offset(0).Limit(100).Rows() for rows.Next() { var dataExOrder DataexportOrder //原来的订单表 // ScanRows 方法用于将一行记录扫描至结构体 err = db.ScanRows(rows, &dataExOrder) if err != nil { log.Info("dealAllDataAccountOrder,ScanRows err ", zap.Error(err)) } if dataExOrder.OrderCode != "" { year := dataExOrder.VipStarttime.Year() log.Info("year", zap.Any("aa", year)) log.Info("aaa", zap.Any("viptime", dataExOrder.VipStarttime)) } } }