The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Выпуск СУБД SQLite 3.38 и набора утилит sqlite-utils 3.24

27.02.2022 13:41

Опубликован релиз SQLite 3.38, легковесной СУБД, оформленной в виде подключаемой библиотеки. Код SQLite распространяется как общественное достояние (public domain), т.е. может использоваться без ограничений и безвозмездно в любых целях. Финансовую поддержку разработчиков SQLite осуществляет специально созданный консорциум, в который входят такие компании, как Adobe, Oracle, Mozilla, Bentley и Bloomberg.

Основные изменения:

  • Добавлена поддержка операторов -> и ->>, упрощающих извлечение данных в формате JSON. Синтаксис новых операторов совместим с MySQL и PostgreSQL.
  • В основной состав включены функции для работы с данными в формате JSON, для подключения которых ранее требовалась сборка с флагом "-DSQLITE_ENABLE_JSON1". Для отключения поддержки JSON добавлен флаг "-DSQLITE_OMIT_JSON".
  • Добавлена функция unixepoch(), возвращающая эпохальное время (число секунд с 1 января 1970 года).
  • Для функций работы со временем реализованы модификаторы "auto" и "julianday".
  • SQL-функция printf() переименована в format() для улучшения совместимости с другими СУБД (поддержка старого имени сохранена).
  • Добавлен интерфейс sqlite3_error_offset() для упрощения определения местоположения ошибок в запросе.
  • В реализацию виртуальных таблиц добавлены новые программные интерфейсы: sqlite3_vtab_distinct(), sqlite3_vtab_rhs_value() и sqlite3_vtab_in(), а также новые типы операторов SQLITE_INDEX_CONSTRAINT_LIMIT и SQLITE_INDEX_CONSTRAINT_OFFSET.
  • В интерфейсе командной строки обеспечена корректная обработка символов табуляции и перевода строки в тексте, выводимом в многостолбцовых режимах. Добавлена поддержка использования опций "--wrap N", "--wordwrap on" и "--quote" при выводе в несколько столбцов. В команде .import обеспечена корректировка имён столбцов.
  • В планировщике запросов для ускорения выполнения больших аналитических запросов задействована вероятностная структура bloom filter, применяемая для определения наличия элемента в наборе. Для оптимизации обработки блоков UNION и UNION ALL, охватывающих выражения SELECT с секциями ORDER BY, задействовано сбалансированное дерево слияния.

Дополнительно можно отметить публикацию версии набора sqlite-utils 3.24, включающего утилиты и библиотеку для манипуляции файлами с БД SQLite. Поддерживаются такие операции как прямая заливка данных JSON, CSV или TSV в файл БД c автоматическим созданием необходимой схемы хранения, выполнение SQL-запросов над файлами CSV, TSV и JSON, выполнение полнотекстового поиска в БД, преобразование данных и схемы хранения в ситуациях когда неприменим ALTER TABLE (например, для изменения типа столбцов), извлечение столбцов в отдельные таблицы.

  1. Главная ссылка к новости (https://www.sqlite.org/changes...)
  2. OpenNews: Выпуск СУБД SQLite 3.37
  3. OpenNews: Выпуск rqlite 7.0, распределённой отказоустойчивой СУБД на основе SQLite
  4. OpenNews: Проект DuckDB развивает вариант SQLite для аналитических запросов
  5. OpenNews: Уязвимость в SQLite, позволяющая удалённо атаковать Chrome через WebSQL
  6. OpenNews: Доступен Dqlite 1.0, распределённый вариант SQLite от компании Canonical
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/56769-sqlite
Ключевые слова: sqlite
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (11) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, FortyTwo (ok), 13:55, 27/02/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >Добавлена поддержка операторов -> и ->>

    Джва года ждал!

     
     
  • 2.3, Аноним (3), 14:06, 27/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ого, действительно. Мне пришлось городить конструкции с json_tree и where json_tree.key and json_type(json_tree.key) = 'integer' and type = 'object'
     

  • 1.2, Аноним (2), 14:04, 27/02/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –16 +/
    Личинка настоящей базы данных. Поэтому и такая популярная.
     
     
  • 2.5, НяшМяш (ok), 15:06, 27/02/2022 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Популярная, потому что не все хотят по сети\сокетам в базу ходить.
     
  • 2.15, leap42 (ok), 05:00, 28/02/2022 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Личинка настоящей базы данных. Поэтому и такая популярная.

    Личинка программиста не понимает, что не всегда нужны множественные\конкурентные подключения к БД (пример - Google Chrome). В таких случаях SQLite - лучший выбор.

     
     
  • 3.18, Аноним (18), 14:54, 28/02/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    И получаем тормозной говнокод, который жрёт всю оперативу, которую видит. Это я сейчас про твой любимый Хром.
     
     
  • 4.19, Аноним (19), 15:55, 28/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Правильно. Причем тут безопасный js?
     
     
  • 5.21, Аноним (21), 10:23, 01/03/2022 [^] [^^] [^^^] [ответить]  
  • +/
    При том что тормозной Sqlite.
     

  • 1.4, barmaley (??), 14:42, 27/02/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Ну наконец-то - взялись за таймпштампы и юлианский день
     
     
  • 2.7, OpenEcho (?), 17:11, 27/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Там больше обертки вокруг strftime

    '''
    <code>
    Function Equivalent (or nearly) strftime()
    date(...) strftime('%Y-%m-%d', ...)
    time(...) strftime('%H:%M:%S', ...)
    datetime(...) strftime('%Y-%m-%d %H:%M:%S', ...)
    julianday(...) strftime('%J', ...) -- note-1
    unixepoch(...) strftime('%s', ...) -- note-1
    </code>
    '''

     
  • 2.22, Аноним (21), 10:24, 01/03/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А вы, друзья, как ни садитесь,
    Всё в музыканты не годитесь.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2022 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру