SQLite, callback function
Изучаю sqlite3 на C. Вопрос по поводу входных параметров sqlite3_exec. Первые два параметра понятно - сама база данных и Команды ввода. Не понятны только 3 и 4 параметр, callback.
Все что понял - это то, что он проходит через все элементы БД. входные параметры функции callback - столбец, строка данных и название столбцов.
А для чего вообще нужен callback?
Ответы (1 шт):
Этот колбек вызывается для каждой найденной строки. В процессе работы функция может возвратить какое-то ненулевое значение и выполнение sql выражения завершиться с SQLITE_ABORT. То есть, в процессе проверки строк может оказаться, что дальше продолжать нет смысла. А можно распечатывать каждую строку (например, для отладки сложного условия).
4 параметр нужен для того, что бы движок передал его в колбек первым параметром. Что именно там будет - зависит от программиста. Например, туда можно передать указатель на структуру и делать какие то подсчеты или условия для проверки. Поэтому он там и void*