Spec-Zone.ru › SQLite

Подготовка флагов

#define SQLITE_PREPARE_PERSISTENT              0x01
#define SQLITE_PREPARE_NORMALIZE               0x02
#define SQLITE_PREPARE_NO_VTAB                 0x04

Эти константы определяют различные флаги, которые могут быть переданы в параметр "prepFlags" интерфейсов sqlite3_prepare_v3() и sqlite3_prepare16_v3().

В будущих версиях SQLite могут быть добавлены новые флаги.

SQLITE_PREPARE_PERSISTENT
Флаг SQLITE_PREPARE_PERSISTENT — это подсказка для планировщика запросов о том, что подготовленное утверждение будет сохранено на долгое время и, вероятно, будет многократно использовано. Без этого флага sqlite3_prepare_v3() и sqlite3_prepare16_v3() предполагают, что подготовленное утверждение будет использоваться только один раз или, самое большее, несколько раз, а затем будет уничтожено с помощью sqlite3_finalize() относительно скоро. Текущая реализация учитывает эту подсказку, избегая использования памяти lookaside, чтобы не истощить ограниченное хранилище lookaside-памяти. Будущие версии SQLite могут действовать на эту подсказку по-другому.

SQLITE_PREPARE_NORMALIZE
Флаг SQLITE_PREPARE_NORMALIZE — это пустая операция. Этот флаг раньше был необходим для любого подготовленного утверждения, которое хотело использовать интерфейс sqlite3_normalized_sql(). Однако теперь интерфейс sqlite3_normalized_sql() доступен для всех подготовленных утверждений, независимо от того, используют ли они этот флаг.

SQLITE_PREPARE_NO_VTAB
Флаг SQLITE_PREPARE_NO_VTAB заставляет компилятор SQL возвращать ошибку (код ошибки SQLITE_ERROR), если утверждение использует какие-либо виртуальные таблицы.

См. также списки Объектов, Констант и Функций.

SQLite is in the Public Domain.
https://sqlite.org/c3ref/c_prepare_normalize.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API