递归火山软件开发平台

标题: gorm的错误和受影响的行数只能二选一吗 求大佬们解惑 [打印本页]

作者: llddkzf    时间: 5 小时前
标题: gorm的错误和受影响的行数只能二选一吗 求大佬们解惑
gorm的错误和受影响行只能二选一吗
错误对象=gorm.更新字段(....).错误  //这里已经更新了

gorm.受影响的行数就等于0了

怎么该怎么理解呢 大佬们

作者: 身边演员太多    时间: 4 小时前
错误对象是更新字段(....)的错误,不是gorm的错误,所以gorm是空,你写错了
作者: 身边演员太多    时间: 3 小时前
gorm对象=gorm.更新字段(....)
错误对象=gorm对象.错误
行数=gorm对象.受影响的行数
作者: llddkzf    时间: 半小时前
身边演员太多 发表于 2026-8-9 17:49
gorm对象=gorm.更新字段(....)
错误对象=gorm对象.错误
行数=gorm对象.受影响的行数 ...

数据时mysql
txDB=主数据.开始事务(空对象)
txDB.置表名("user_table").置排它锁 ().cha询 (oldData, "id=?", userOBJ.id) //锁住旧数据行
txDB.置表名("user_table").忽略("id","add_time").更新全部(newOBJ)  //假设这里报错了或者成功了
txDB.错误  //这里始终都为空对象
txDB.取受影响的行  //这里始终都是0
//而且还报错了 说什么索引找不到
....
....
//后续的更新其他表
txDB.提交事务()

所以我无论如何都不能同时得到错误对象和受影响的行
我不知道该如何操作了  原生go可以同时得到这两个
作者: llddkzf    时间: 半小时前
身边演员太多 发表于 2026-8-9 17:49
gorm对象=gorm.更新字段(....)
错误对象=gorm对象.错误
行数=gorm对象.受影响的行数 ...

你是对的 我忽略了没有重新赋值




欢迎光临 递归火山软件开发平台 (http://bbs.voldp.com/) Powered by Discuz! X3.4