Доступна СУБД SQLite 3.54 с оптимизациями, расширением CLI и прекращением поддержки Windows XP
Опубликован релиз SQLite 3.54, легковесной СУБД, оформленной в виде подключаемой библиотеки. Код SQLite распространяется как общественное достояние (public domain), т.е. может использоваться без ограничений и безвозмездно в любых целях. Финансовую поддержку разработчиков SQLite осуществляет специально созданный консорциум.
Основные изменения:
- Проведены оптимизации, позволившие ускорить прохождение теста speedtest1 примерно на 4% по сравнению с прошлой версией и на 7.5% по сравнению с выпуском 3.51 годичной давности. Результаты могут меняться в зависимости от вида нагрузки, сборочных опций, CPU, компилятора и операционной системы.
- В утилите sqlite реализована возможность использования escape-последовательностей в приглашении командной строки для показа дополнительной информации о состоянии, например, "/x" для сведений об открытой транзакции, "/r" для БД в режиме только для чтения, "/m" для БД, хранимой только в оперативной памяти, "/f" для вставки имени файла с БД, "/v" для показа версии SQLite, "/:" и "/;" для построения условных выражений, "/u" и "/h" для вставки имени пользователя и хоста. Настройка шаблона приглашения командной строки осуществляется через переменные окружения SQLITE_PS1 и SQLITE_PS2.
- В CLI по умолчанию оставлен заголовок с именами столбцов, если запрос не вернул строк, а также отключена чистка нулевых байтов при выводе blob-ов в Unix-системах. В команду ".mode" добавлены опции "--ifmt", "--rowcount on" и "--titles always" для настройки формата чисел с плавающей запятой и управления показом счётчика строк и заголовка.
- Заменён обработчик команды ".diskused" в CLI и добавлена SQL-функция diskused() для оценки места, которое таблицы и индексы занимают на накопителе.
- Улучшен планировщик запросов. Ускорено выполнение операций UPDATE в ситуациях, когда имеются индексы по выражениям, но индексируемое значение не меняется. Оптимизировано выполнение операций "expr OR TRUE" и "expr OR FALSE". Обеспечено игнорирование выражения DISTINCT в SELECT-подзапросах, указанных справа от оператора "IN". Ускорена обработка и снижено потребление памяти при указании в UNION-запросах выражения "LIMIT 1".
- В команде ALTER TABLE включён вывод ошибки для любых попыток добавления, удаления или переименования столбцов с зарезервированными именами "ROWID", "_ROWID_" и "OID".
- В SQL-функции printf() и format() добавлены подстановки "%J" и "%j" для вывода в формате JSON.
- В функции работы с датами и временем добавлены модификаторы "weekday -N" и "end of".
- На системах с поддержкой флага O_TMPFILE в функции open(), данный режим задействован при создании временных файлов.
- Прекращена поддержка старых версий ОС Windows, включая Windows CE и Windows XP. В качестве минимальной версии заявлена Windows Vista.
https://opennet.ru/66442/
https://opennet.me/66442/
Post #6933
30