目标:在 mongoDB 的现有记录里,新增 TfuEigenvalue TevEigenvalue 两个字段,并赋值 问题:TfuEigenvalue TevEigenvalue 字段的值均为“” 解决过程: row.ObtainDate(string 类型)存在为""的情况, 此前未处理这个情况. 修复后,问题消失. 有问题的代码: for _, row := range rows { upsertFilter := bson.M{ "vin": row.VinNo, } //这里字符串转换为 time, 有问题 date, _ := time.ParseInLocation("2006-01-02 15:04:05", row.ObtainDate, time.Local) err := db.Update(upsertFilter, bson.M{"$set": DimVehicleT5{ Vin: row.VinNo, BrandID: row.BrandName, BrandName: row.BrandName, ModelID: row.CarSeriesCode, ModelName: row.CarSeriesCode, CarModel: row.ProductCode, TbjEigenvalue: row.TbjEigenvalue, TfuEigenvalue: row.TfuEigenvalue, TevEigenvalue: row.TevEigenvalue, ObtainDate: uint64(date.UnixNano()) / 1e3, ConfigName: row.ConfigName, }}, false, bson.M{"upsert": true}) if err != nil { log.Errorf("zyh5 db insert err:%v", err) continue } }
求教: 为什么字符串解析的问题, 会影响其他两个字段的赋值呢? 我在本地也没复现出这个情况