Изданието на SQLite 3.37, лека СУБД, проектирана като библиотека с добавки, беше публикувана. Кодът на SQLite се разпространява в публичното пространство, т.е. може да се използва без ограничения и безплатно за всякакви цели. Финансовата подкрепа за разработчиците на SQLite се осигурява от специално създаден консорциум, който включва компании като Adobe, Oracle, Mozilla, Bentley и Bloomberg.
Основни промени:
- Добавена е поддръжка за създаване на таблици с атрибута „STRICT“, който изисква задължителна индикация за тип при деклариране на колони и прилага стриктни проверки за съвпадение на типа за данни, добавени към колоните. Когато този флаг е зададен, SQLite ще покаже грешка, ако е невъзможно да се прехвърлят посочените данни към типа колона. Например, ако колоната е създадена като "INTEGER", тогава предаването на стойността на низа "123" ще доведе до добавяне на числото 123, но опитът да се посочи "xyz" ще бъде неуспешен.
- В операцията “ALTER TABLE ADD COLUMN” е добавена проверка за условия за съществуване на редове при добавяне на колони с проверки на базата на израза “CHECK” или с условия “NOT NULL”.
- Реализиран е изразът „PRAGMA table_list“ за показване на информация за таблици и изгледи.
- Интерфейсът на командния ред изпълнява командата „.connection“, която ви позволява едновременно да поддържате множество връзки към базата данни.
- Добавен е параметърът „—safe“, който деактивира CLI команди и SQL изрази, които ви позволяват да извършвате операции с файлове на база данни, които се различават от базата данни, указана в командния ред.
- CLI е оптимизирал производителността на четене на SQL изрази, разделени на няколко реда.
- Добавени функции sqlite3_autovacuum_pages(), sqlite3_changes64() и sqlite3_total_changes64().
- Планиращият заявки гарантира, че клаузите ORDER BY в подзаявките и изгледите се игнорират, освен ако премахването на тези клаузи не променя семантиката на заявката.
- Разширението generate_series(START,END,STEP) е променено, като първият параметър в което (“START”) е направен задължителен. За да върнете старото поведение, е възможно да изградите отново с опцията "-DZERO_ARGUMENT_GENERATE_SERIES".
- Намалена консумация на памет за съхраняване на схемата на базата данни.
Източник: opennet.ru