SQLite обновил методику выполнения SQL-запросов через API, что позволяет разработчикам более эффективно обрабатывать данные. Теперь с помощью вызова sqlite3_open создается объект подключения, который затем инициирует процесс компиляции и выполнения запросов. Когда приложение вызывает sqlite3_prepare, SQL-текст преобразуется в компилируемое представление, создающее объект Vdbe, аналогичный байт-коду, готовому к исполнению. На этом этапе запрос готов, но еще не выполняется. Это как загрузка программы, которая еще не запущена. Перед выполнением приложения могут связать значения с помощью функций sqlite3_bind_*, что позволяет заменять заполнитель в подготовленном запросе. Когда вызывается sqlite3_step, происходит активация: VDBE интерпретирует байт-код, создаются курсоры, которые соединяются с B-деревом (таблицей или индексом). Курсоры создаются и используются в пределах выполнения запроса. Они уничтожаются после завершения операции, что позволяет избежать переполнения памяти промежуточным
SQLite оптимизировал выполнение запросов — новая схема взаимодействия
3 апреля3 апр
1 мин