Состоялся выпуск свободной встраиваемой СУБД SQLite версии 3.36.0.
Основные изменения:
- Вывод команды EXPLAIN QUERY PLAN стал более понятным.
- BOM в начале токена теперь трактуется как пробел (пропускается).
- Доступа к rowid (идентификатору строки) в представлении (VIEW) или подзапросе теперь приводит к ошибке. Раньше такой идентификатор строки был неопределённым и часто имел значение
NULL
. Использование опции компиляции-DSQLITE_ALLOW_ROWID_IN_VIEW
возвращает прежнее поведение. - Интерфейсы sqlite3_deserialize() и sqlite3_serialize() теперь включены по умолчанию. Опция компиляции
-DSQLITE_ENABLE_DESERIALIZE
утратила свою актуальность и была заменена опцией компиляции-DSQLITE_OMIT_DESERIALIZE
, отключающей вышеупомянутые интерфейсы. - Виртуальная ФС «memdb» теперь поддерживает совместное использование базы данных, хранящейся в памяти, несколькими соединениями в одном процессе, если имя базы данных начинается с «/».
- Прекращено использование оптимизации EXISTS-to-IN в связи с тем, что она чаще замедляла запросы чем делала их быстрее.
- Оптимизация constant-propagation теперь работать с запросами без объединения (non-join queries).
- Расширение REGEXP теперь включено в CLI-сборки.
Код СУБД SQLite распространяется на условиях общественного достояния.
>>> Подробности