Коды событий отслеживания SQL
#define SQLITE_TRACE_STMT 0x01 #define SQLITE_TRACE_PROFILE 0x02 #define SQLITE_TRACE_ROW 0x04 #define SQLITE_TRACE_CLOSE 0x08
Эти константы идентифицируют классы событий, которые могут отслеживаться с помощью логики отслеживания sqlite3_trace_v2(). Аргумент M в sqlite3_trace_v2(D,M,X,P) представляет собой побитовое ИЛИ одного или нескольких следующих констант. Первый аргумент обратного вызова отслеживания — одна из следующих констант.
В будущих выпусках могут быть добавлены новые константы отслеживания.
Обратный вызов отслеживания имеет четыре аргумента: xCallback(T,C,P,X). Аргумент T — один из целочисленных кодов типов выше. Аргумент C — копия указателя контекста, переданного в качестве четвёртого аргумента в sqlite3_trace_v2(). Аргументы P и X — указатели, значение которых зависит от T.
- SQLITE_TRACE_STMT
- Обратный вызов SQLITE_TRACE_STMT вызывается, когда подготовленное выражение впервые начинает выполняться, и, возможно, в другие моменты во время выполнения подготовленного выражения, например, в начале каждого подпрограммы триггера. Аргумент P — указатель на подготовленное выражение. Аргумент X — указатель на строку, которая представляет собой нерасширенный текст SQL подготовленного выражения или комментарий SQL, указывающий на вызов триггера. Обратный вызов может вычислить ту же строку, которая была бы возвращена интерфейсом sqlite3_trace() предыдущего поколения, используя аргумент X, если X начинается с "--", и вызывая sqlite3_expanded_sql(P) в противном случае.
- SQLITE_TRACE_PROFILE
- Обратный вызов SQLITE_TRACE_PROFILE предоставляет приблизительно ту же информацию, что и обратный вызов sqlite3_profile(). Аргумент P — указатель на подготовленное выражение, а аргумент X указывает на 64-битное целое число, которое приблизительно равно количеству наносекунд, потребовавшихся подготовленному выражению для выполнения. Обратный вызов SQLITE_TRACE_PROFILE вызывается, когда выполнение запроса завершается.
- SQLITE_TRACE_ROW
- Обратный вызов SQLITE_TRACE_ROW вызывается всякий раз, когда подготовленное выражение генерирует одну строку результата. Аргумент P — указатель на подготовленное выражение, а аргумент X не используется.
- SQLITE_TRACE_CLOSE
- Обратный вызов SQLITE_TRACE_CLOSE вызывается при закрытии подключения к базе данных. Аргумент P — указатель на объект подключения к базе данных, а аргумент X не используется.
См. также списки Объектов, Констант и Функций.
SQLite is in the Public Domain.
https://sqlite.org/c3ref/c_trace.html