Small. Fast. Reliable.
Choose any three.

Session Module C Interface

Тест, сделал ли changeset запись каких-либо изменений

int sqlite3session_isempty(sqlite3_session *pSession);

Возвратит не 0, если никакие изменения приложенных таблиц не были зарегистрированы объектом сессии, переданным как первый аргумент. Иначе, если одно или более изменений были зарегистрированы, возвратит ноль.

Даже если эта функция возвращает ноль, возможно, что запрос sqlite3session_changeset() на дескрипторе сессии может все еще возвратить changeset, который не содержит изменений. Это может произойти, когда строка в таблице изменяется, и затем позже исходные значения восстановлены. Однако, если эта функция вернет не 0, то гарантируется, что обращение к sqlite3session_changeset() возвратит changeset, содержащий нулевые изменения.