The OpenNET Project / Index page

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

Выпуск СУБД SQLite 3.50

31.05.2025 21:40

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

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

  • Добавлены новые SQL-функции unistr() и unistr_quote() для замены экранированных последовательностей (\uXXXX) в unicode-символы и наоборот.
  • В интерфейсе командной строки отключён прямой вывод управляющих символов. В выводе команды ".dump" обеспечено преобразование спецсимволов при помощи функции unistr(). Улучшено форматирование частичных индексов в выводе команды ".schema --indent".
  • В sqlite3_rsync, утилите для копирования БД между системами, протокол синхронизации оптимизирован для снижения трафика при переносе похожих БД. Реализована возможность синхронизации БД без включения режима WAL (Write-Ahead Logging).
  • Оптимизирована работа функций jsonb_set() и jsonb_replace() при изменении больших JSON-объектов.
  • Улучшена поддержка сборки с использованием Cygwin, MinGW и Termux.


  1. Главная ссылка к новости (https://www.sqlite.org/changes...)
  2. OpenNews: Выпуск СУБД SQLite 3.46
  3. OpenNews: Google использовал большую языковую модель для выявления уязвимости в SQLite
  4. OpenNews: Проект Redka развивает реализацию протокола и API Redis поверх SQLite
  5. OpenNews: Выпуск DuckDB 0.10.0, варианта SQLite для аналитических запросов
  6. OpenNews: Проекты CBS и sqld развивают облачный и серверный варианты SQLite
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/63334-sqlite
Ключевые слова: sqlite
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (47) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 21:49, 31/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Что посоветуете сейчас для переноса в постгрес? Желательно с минимумом затрат и возможностью проверки соответствия. Есть поля с жсоном.
     
     
  • 2.2, Аноним (2), 21:53, 31/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Посоветую Python. Можно читать SQLite и писать в PostgreSQL.
     
     
  • 3.5, Аноним (1), 22:05, 31/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Посоветую Python. Можно читать SQLite и писать в PostgreSQL.

    Я знаю про Alembic, есть что-нибудь, чтобы мышкой в 2 клика мигрировать?

     
     
  • 4.16, Аноним (16), 23:29, 31/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Одноразовые мероприятия не автоматизируют, тем более такие примитивные как перенос данных из одной базы в другую. Там сложно совсем не это.
     
     
  • 5.27, Аноним (1), 08:33, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Одноразовые мероприятия не автоматизируют, тем более такие примитивные как перенос данных
    > из одной базы в другую. Там сложно совсем не это.

    Чего? Схема может быть с кучей правил и ссылок, а типы не переносятся 1 в 1? Прагмы, опять же? Скопировать часть данных и перенести данные со всей логикой это не одно и то же. Это вовсе не примитивное занятие, sqlite в этом отношении ничуть не проще.

     
     
  • 6.38, Аноним (16), 16:05, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я именно об этом и пишу. Перелить данные несложно, сложно придумать правила конверсии, и тут всё очень индивидуально, универсальное решение возможно только для примитивных случаев, которым оно не нужно.
     
  • 4.26, Аноним (-), 06:57, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Если бы я 10 лет назад это сделал, когда мне пришло в голову, может и было. Это просто никому не нужно. Давайте начнем с вопроса, а сколько за этот софт вы готовы были бы заплатить теоретически? Кроме того с SQLite это предельно просто вручную перенести, а есть более сложные БД.
     
     
  • 5.28, Аноним (1), 08:45, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Да как 20 лет назад страдали, так и сегодня продолжают. И нет, это не просто, был опыт уже. Просто -- если достаточно скопировать и нет никаких связей, а схема примитивная.
     
  • 4.31, Аноним (-), 10:09, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> Да как 20 лет назад страдали, так и сегодня продолжают. И нет, это не просто, был опыт уже. Просто -- если достаточно скопировать и нет никаких связей, а схема примитивная.

    Да куча (как минимум иностранных, с ними работаю) компаний сталкиваются с одними и теми же проблемами, но их просто жаба давит отдать пару тысяч баксов за софт который решает их проблемы. Им проще чтобы команда простаивала месяц и мучилась с миграцией. И этой команде они заплатят за этот простой больше чем за софт. Даже если только примитивно таблицы, индексы, пользователей скопировать - как минимум часть команды уже может работать с новой БД, но об этом никто не думает.

     
     
  • 5.35, Аноним (35), 12:04, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    "Так команде и так, и этак платить, все равно эти расходы есть. А за отдельный софт платить это дополнительные расходы!" Такая, вот, экономия.
     
     
  • 6.42, Аноним (-), 20:25, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну так как правило западные заказчики любят платить за фичи, а не за воркэраунд.
     
  • 5.41, Аноним (41), 19:49, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Мутный софт за 1000 долларов. Против полного контроля над своим продуктам. А ты мастер попадаться на бесплатный сыр из мышеловки.
     
     
  • 6.44, Аноним (-), 20:30, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А ты мастер попила я так понимаю? Мне казалось ныне в РФ есть сертификация цифровых продуктов, так оно и на западе давно есть. В этом процессе предусмотрено представление кода соответствующим людям отвечающим за безопасность. У них и площадки распространения продукции есть соответствующие безопасности раз уж на то пошло. На всякую мелочь как правило это не нужно, но как бы сказать... хрень в общем не неси
     
  • 5.45, Аноним (16), 21:01, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Так команда простаивала или мучалась с миграцией? Ты уж определись, дорогой. То, что руководство выбрало миграцию силами команды вместо покупки какого-то волшебного софта, который должен был угадать как так смигрировать чтобы ваш юз-кейс и дальше работал, наверное должно что-то сказать об экономической стороне проблемы, решение котрой, судя по всему, не пару тысяч баксов стоит. И то, что ты не догоняешь почему так вышло тоже не удивительно, программисты любят рассказывать что они лучше менеджмента знают как бизнес делать, но почему-то продолжают работать на дядю за зарплатку и мечтать как они потратят годовой бонус.
     
     
  • 6.49, Аноним (-), 00:08, 02/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> Так команда простаивала или мучалась с миграцией?

    Че, серьезно не понятно что с точки зрения бизнеса работы реально 0 в этом случае? Менять БД с шила на мыло профит не приносит. И вообще троллятина морочь кому-то другому голову, самообманом про отдельные юз-кейсы своему заказчику расскажи, он поверит. Менеджмент также работают на дядю, не нужно рассказывать. Порой у них не только мозги заняты, но и другие части тела, в основном ртом, так-что вкалывают они не меньше.

     
  • 4.43, Sserj (?), 20:28, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не совсем понятно про что вопрос. Но как вариант в DBeaver есть экспорт/импорт чего угодно куда угодно. Подключаешься к к двум базам, рисуешь взаимосвязи мышкой или прописываешь сложные хоть своими запросами, гоняешь, проверяешь и сохраняешь себе схему на будущее.
     
  • 2.48, Аноним (-), 23:35, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Что посоветуете сейчас для переноса в постгрес?

    Вы уверены что вам это надо? Или это работа ради работы?

     

  • 1.4, Аноним (4), 21:56, 31/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –9 +/
    Ну что хранители настроек в sqlite очередной раз слушаю почему вы не можете хранить настройки в кейвелью.
     
     
  • 2.6, Alladin (?), 22:06, 31/05/2025 [^] [^^] [^^^] [ответить]  
  • +5 +/
    где?
     
  • 2.7, Аноним (1), 22:09, 31/05/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Ну что хранители настроек в sqlite очередной раз слушаю почему вы не
    > можете хранить настройки в кейвелью.

    Я использовал leveldb, она регулярно рассыпается и обнуляется с потерей всего. Sqlite идеален в этом отношении, ни одного косяка. Всё, что записано, всё потом прочиталось.

     
     
  • 3.18, Кошкажена (?), 00:30, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Я использовал leveldb, она регулярно рассыпается и обнуляется с потерей всего.

    А нужно было  libmdbx

     
  • 2.8, НяшМяш (ok), 22:13, 31/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Настройки вообще в текстовых файлах хранить можно, зачем там в принципе какая-то база.
     
     
  • 3.9, anonymous (??), 22:28, 31/05/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    В битовых масках
     
  • 3.10, Аноним (10), 22:33, 31/05/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Настройки лучше всего в формате С хранить.
     
  • 3.13, Аноним (16), 23:05, 31/05/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    В каком формате?
     
     
  • 4.39, Аноним (39), 19:14, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    ключ = значение
    Но если что-то посложнее, то можно наподобие структур:
    name1
    {
      key0 = value0
      key1 = value1
    }
     
     
  • 5.47, Аноним (16), 22:48, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну так давай конкретику, а не «наподобие». Вот у меня конфиг реального проекта, прямо из прода, в нём: группировки, комментарии, в значениях бывают и числа, и строки с разными символами типа переводов строки и кавычек всех видов, и булевые, и перечисления, и даже произвольные массивы перечисленного. Поддержку ссылок на другие части конфига тоже хорошо бы, но давить не буду, уж текстовый-то конфиг можно и скриптом нагенерить.
     
     
  • 6.52, Карлос Сношайтилис (ok), 08:43, 02/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Аккуратнее там, с таким конфигом.
    Как показывает практика, чем круче формат конфига, тем выше вероятность, что он превратится в язык программирования
     
  • 3.20, Аноним (20), 01:19, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    В формате ключ-значение? Или мы чего-то не знаем?
     
  • 3.25, User (??), 06:55, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, бывает что вот экземпляров у тебя запущено несколько и они (тоже бывает, да - рестартить на каждый чих давно уже не модно) могут изменять свое состояние...
     
     
  • 4.53, Карлос Сношайтилис (ok), 08:47, 02/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > рестартить на каждый чих давно уже не модно

    Graceful reload/restart – максимально модно

     
  • 2.15, Dzen Python (ok), 23:11, 31/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Оно -тупо- работает?
     
     
  • 3.19, Аноним (20), 01:17, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Оно тупо тормозит потому что избыточно.
     
     
  • 4.24, User (??), 06:53, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    О, и тут г-дам нехайлоадерам "скорострельности"(тм) не хватает? Даже интересно, что ж вы такое в эту самую "конфигурацию" так отчаянно пишете/читаете, что аж разницу sql/nosql замечаете?
    Чот кажется мне, что "дело было не в бобине..."
     
     
  • 5.32, Аноним (20), 10:48, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    В том то и дело что если на стене висит ружье программист типа тебя обязательно выстрелит им себе в ногу. Не знаю зачем вы там делаете трёхэтажные запросы для простых действий.
     
     
  • 6.37, User (??), 15:13, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > В том то и дело что если на стене висит ружье программист
    > типа тебя обязательно выстрелит им себе в ногу. Не знаю зачем
    > вы там делаете трёхэтажные запросы для простых действий.

    Ээээ... ну то есть "самая быстрая рука дикого запада" всерьёз думает, что люди для этих целей вручную SQL-запросы делают? Нууу... хорошо там в конце 90х было, да. Лампово так...

     
     
  • 7.40, Аноним (41), 19:47, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    На некоторых людей посмотришь удивляешься как они ложкой пользоваться научились.
     
     
  • 8.46, User (??), 22:15, 01/06/2025 [^] [^^] [^^^] [ответить]  
  • +/
    И не говорите Глядишь - и удивляешься, как так Писать вроде научились, а читат... текст свёрнут, показать
     

  • 1.11, Аноним (11), 22:36, 31/05/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     

  • 1.34, Анониссимус (?), 11:18, 01/06/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > В интерфейсе командной строки отключён прямой вывод управляющих символов. В выводе команды ".dump" обеспечено преобразование спецсимволов при помощи функции unistr().

    Это значит, он наконец научился дампить блобы? Ещё бы нормальный тип uuid сделали, было бы вообще супер.

     

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



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

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