SQLite, callback function

Изучаю sqlite3 на C. Вопрос по поводу входных параметров sqlite3_exec. Первые два параметра понятно - сама база данных и Команды ввода. Не понятны только 3 и 4 параметр, callback.

Все что понял - это то, что он проходит через все элементы БД. входные параметры функции callback - столбец, строка данных и название столбцов.

А для чего вообще нужен callback?


Ответы (1 шт):

Автор решения: KoVadim

Этот колбек вызывается для каждой найденной строки. В процессе работы функция может возвратить какое-то ненулевое значение и выполнение sql выражения завершиться с SQLITE_ABORT. То есть, в процессе проверки строк может оказаться, что дальше продолжать нет смысла. А можно распечатывать каждую строку (например, для отладки сложного условия).

4 параметр нужен для того, что бы движок передал его в колбек первым параметром. Что именно там будет - зависит от программиста. Например, туда можно передать указатель на структуру и делать какие то подсчеты или условия для проверки. Поэтому он там и void*

→ Ссылка