Сообщение от
ZVV
По-моему причины данного поведения достаточно очевидны.
Если делается обычный
update() то Акса проверяет, что хоть какое-то поле поменялось и если нет, то реального Апдэйта в БД не уходит.
В случае же
update_recordset если выполняются все необходимые условия
(типа отсутствия перекрытого метода update(), отсутствия Лога БД или же если есть соответсвующие skipXXX()... это я думаю понятно....) на сервер БД сразу отправляется update вида:
X++:
UPDATE ...
SET FIELD=:in1,MODIFIEDDATE=:in2,MODIFIEDTIME=:in3
WHERE ...
Соответсвенно и поля меняются всегда для попадающих под запрос строк.
Всё логично... С точки зрения БД - это номальное как раз поведение, т.к. обновление реальное было.
Перекройте метод Update() на таблице и получится первый вариант поведения (Аксаптовский)...

Со всеми вытекающими по скорости.