RussianLDP Рейтинг@Mail.ru
WebMoney: 
WMZ Z294115950220 
WMR R409981405661 
WME E134003968233 
Visa 
4274 3200 2453 6495 

Small. Fast. Reliable.
Choose any three.

Session Module C Interface

Флаги для sqlite3changeset_apply_v2

#define SQLITE_CHANGESETAPPLY_NOSAVEPOINT   0x0001
#define SQLITE_CHANGESETAPPLY_INVERT        0x0002
#define SQLITE_CHANGESETAPPLY_IGNORENOOP    0x0004
#define SQLITE_CHANGESETAPPLY_FKNOACTION    0x0008

Следующие флаги могут передаваться через 9-й параметр sqlite3changeset_apply_v2 и sqlite3changeset_apply_v2_strm:

SQLITE_CHANGESETAPPLY_NOSAVEPOINT
Обычно, модуль сессий прилагает все операции, выполненные единственным обращением к apply_v2() или apply_v2_strm(), в SAVEPOINT. SAVEPOINT передается, если changeset или patchset успешно применены или отменены, если ошибка происходит. Определение этого флага заставляет модуль сессий опускать эту точку сохранения. В этом случае, если у вызывающего есть открытая транзакция или точка сохранения, когда вызвана apply_v2(), это может вернуть частично примененный changeset, отменив его.

SQLITE_CHANGESETAPPLY_INVERT
Инвертируйте changeset прежде, чем применить его. Это эквивалентно инвертированию changeset, используя sqlite3changeset_invert() прежде, чем применить его. Ошибка определить этот флаг с patchset.

SQLITE_CHANGESETAPPLY_IGNORENOOP
Не вызывайте отзыв обработчика конфликта ни для каких изменений, которые на самом деле не изменили бы базу данных, даже если бы они были применены. Это означает, что обработчик конфликта не вызван для:
  • удаления, если удаляемая строка не может быть найдена
  • изменения обновления, если измененные области уже установлены в их новые значения в противоречивой строке
  • изменения вставки, если все области противоречивой строки соответствуют вставляемой строке

SQLITE_CHANGESETAPPLY_FKNOACTION
Если этот флаг задан, все ограничения внешнего ключа в целевой базе данных ведут себя, как будто они были объявлены с "ON UPDATE NO ACTION ON DELETE NO ACTION", даже если они на самом деле CASCADE, RESTRICT, SET NULL или SET DEFAULT.