Устаревшие функции отслеживания и профилирования
void *sqlite3_trace(sqlite3*, void(*xTrace)(void*,const char*), void*); void *sqlite3_profile(sqlite3*, void(*xProfile)(void*,const char*,sqlite3_uint64), void*);
Эти функции устарели. Используйте интерфейс sqlite3_trace_v2() вместо описанных здесь функций.
Эти функции регистрируют функции обратного вызова, которые могут использоваться для отслеживания и профилирования выполнения SQL-запросов.
Функция обратного вызова, зарегистрированная функцией sqlite3_trace(), вызывается в различные моменты, когда SQL-запрос выполняется функцией sqlite3_step(). Функция обратного вызова sqlite3_trace() вызывается с UTF-8 представлением текста SQL-запроса, когда запрос начинает выполняться. Дополнительные вызовы sqlite3_trace() могут происходить по мере входа в каждую вызываемую подпрограмму. Функции обратного вызова для триггеров содержат UTF-8 комментарий SQL, который идентифицирует триггер.
Опция компиляции SQLITE_TRACE_SIZE_LIMIT может использоваться для ограничения длины расширения связанных параметров параметров в выходных данных sqlite3_trace().
Функция обратного вызова, зарегистрированная функцией sqlite3_profile(), вызывается по завершении каждого SQL-запроса. Функция обратного вызова профиля содержит исходный текст запроса и оценку времени выполнения запроса по часам. Время функции обратного вызова профиля указано в наносекундах, однако текущая реализация способна только к разрешению в миллисекундах, поэтому шесть наименее значимых цифр в времени не имеют значения. Будущие версии SQLite могут предоставить более высокое разрешение для функции обратного вызова профилирования. Вызов либо sqlite3_trace(), либо sqlite3_trace_v2() отменит функцию обратного вызова профиля.
См. также списки объектов, констант и функций.
SQLite is in the Public Domain.
https://sqlite.org/c3ref/profile.html