Как проверить, обновлял ли gorm save () какие-либо значения в mysql - PullRequest
0 голосов
/ 10 декабря 2018

Я пытаюсь выяснить, как лучше всего проверить, перезаписывают ли сохраненные мной значения те, которые находятся в базе данных.

Очевидно, я могу получить запись, сравнить данныеа затем сохранить, если это не так, но я подумал, есть ли способ узнать, когда сохранение будет сделано?

Я могу использовать обновление - и оно вернет значение, затронутое строкой> 1, но проблема в том, что обновление не может обновить значение в БД до значения типа по умолчанию Go (например, 0)следовательно, это не сработает для этого случая.

Например:

db.Table("object").Where("id = ?", obj).Save(obj)
log.Println(res.RowsAffected) // always equals 1

по сравнению с

res := db.Table("object").Where("id = ?", obj).Update(obj)
log.Println(res.RowsAffected) // equals 1 if updated

Есть идеи?

...