SQLite 3.50.0: нова версія компактної вбудованої СУБД
SQLite 3.50.0: нова версія компактної вбудованої СУБД
29 травня відбувся випуск SQLite 3.50.0 – компактної вбудованої СУБД, написаної мовою C і поширюваної як суспільне надбання. Нова версія SQLite включає низку важливих змін та покращень, що розширюють функціональність цієї популярної бази даних.
Основні зміни у SQLite 3.50.0
Розробники SQLite представили кілька ключових нововведень та виправлень у цьому релізі:
- Додано функцію 
sqlite3_setlk_timeout(), що встановлює окремий таймаут, відмінний відsqlite3_busy_timeout(). - Обмеження 
SQLITE_DBCONFIG_ENABLE_COMMENTSдещо послаблено, тож коментарі завжди дозволені при читанні схеми з існуючої таблиціsqlite_schema. Коментарі блокуються лише в новому SQL. - Додано вбудовані SQL-функції 
unistr()таunistr_quote(). - У перетвореннях 
%Qта%qу вбудованій функціїprintf()прапор альтернативної форми#перетворює керуючі символи в беквари-ескейпи, придатні дляunistr(). 
Покращення в консольній утиліті та взаємодії з базою даних
SQLite 3.50.0 також містить низку покращень щодо роботи з даними:
- У консольній утиліті заборонено прямий вивід більшості керуючих символів.
 - У виводі команди 
.dumpвикористовується нова SQL-функціяunistr()для кодування спеціальних символів (якщо не вимкнено режим--escape). - Покращено форматування складних часткових індексів у виводі команди 
.schema --indent. - Вдосконалено утиліту синхронізації БД 
sqlite3_rsync. 
Виправлення помилок та оптимізації в SQLite
Крім того, у новій версії SQLite вирішено кілька важливих проблем:
- Забезпечено дотримання обмеження JSON5, згідно з яким за символом 
\0не повинна слідувати цифра. - Виправлено помилку в функції 
json_group_object(LABEL,VALUE). - Оптимізовано функції 
jsonb_set()таjsonb_replace(). - Покращено підтримку збирання в Cygwin, MinGW та подібних системах, а також у Termux.
 - Виправлено друкарські помилки в документації та коментарях до вихідного коду.
 - Внесено різні покращення продуктивності.
 
Зміни для JavaScript/WASM
Важливим є виправлення давньої помилки в JavaScript/WASM: виправлено розрахунок контрольної суми імені файлу в VFS OPFS SAHPool. Через це бази даних, створені в цій VFS у версії 3.50.0+, не можуть бути прочитані старішими версіями VFS. Однак SQLite 3.50.0 залишається зворотньо сумісною з існуючими базами даних, створеними в старіших версіях.
Нова версія SQLite 3.50.0 – це значне оновлення, яке розширює функціональні можливості цієї компактної бази даних та робить її ще більш потужною для розробників. Детальніше про всі зміни можна дізнатися на офіційному сайті SQLite або в офіційному журналі випуску.
			



