«Предварительно подготовленные» операторы в SQLite3? - PullRequest
3 голосов
/ 12 мая 2011

Используя SQLite во встроенной системе с ограниченным объемом памяти с фиксированным набором запросов, кажется, что можно было бы сэкономить код и данные, если бы запросы могли быть «предварительно подготовлены».То есть подготовленный оператор создается (эквивалентно) sqlite3_prepare_v2 () во время build , и во время выполнения нужно вызывать только _bind (), _step () и т. Д., Ссылаясь на один или несколько sqlite3_stmt *указатели, которые являются эффективно статическими данными.Весь механизм синтаксического анализа SQL (и планирования запросов?) Можно было бы исключить из цели.

Я понимаю, что за указателем sqlite3_stmt * скрыта значительная сложность, и что это вряд ли будет практично с текущейРеализация sqlite3 - но выполнима ли концепция?

1 Ответ

4 голосов
/ 12 мая 2011

Это обсуждалось в списке рассылки пользователей SQLite в 2006 году. В то время Д. Ричард Хипп поддерживал коммерческую версию SQLite, которая запускала скомпилированные операторы для урезанной цели, у которой не было никакихПарсер SQLВозможно, вы можете проверить с помощью hwaci , чтобы узнать, доступен ли этот продукт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...