【记录一个问题】golang的xorm组件更新数据库未生效
代码中使用了类似的方式来更新数据库:
func (writer *dbWriter) updateVersion(ctx context.Context, IP string, version string) {
engine, _ := utils.GetEngin()
updateFields := map[string]interface{}{
"version": version,
}
idFields := map[string]interface{}{
"inner_ip": IP,
}
cnt, err := engine.Table("t_servers").Update(updateFields, idFields)
if err != nil {
log.Errorf("update version error, err=%s,IP=%+v", err.Error(), IP)
return
}
if cnt != 1 {
log.Warnf("update_version data fail: cnt=%d, IP=%s", cnt, IP)
return
}
log.Infof("update_version %s to %s success", IP, version)
}
刚开始运行的时候很正常,几天后,日志里面显示成功更新了,但是数据库未更新。
原因未知。