SQLite to lekki relacyjny silnik bazy danych, dostępny za pośrednictwem języka SQL . W przeciwieństwie do tradycyjnych serwerów baz danych, takich jak MySQL czy PostgreSQL, jego cechą wyróżniającą jest brak replikacji typowej architektury klient-serwer, a raczej bezpośrednia integracja z programami.
Cała baza danych (wyrażenia, tabele, indeksy i dane) jest przechowywana w pliku niezależnym od platformy. Dzięki swojej wyjątkowo lekkiej naturze, jest ona wykorzystywana między innymi w wielu programach konsumenckich i cieszy się dużą popularnością również w systemach wbudowanych, w tym w najnowszych smartfonach.
W przeciwieństwie do systemów zarządzania bazami danych typu klient-serwer, silnik SQLite nie jest oddzielnym procesem , z którym komunikuje się program główny. Zamiast tego biblioteka SQLite jest powiązana z programem, stając się jego integralną częścią.
Program wykorzystuje funkcjonalność SQLite poprzez proste wywołania podprogramów i funkcji. Zmniejsza to opóźnienie w dostępie do bazy danych, ponieważ wywołania funkcji są bardziej wydajne niż komunikacja między procesami.
Cała baza danych (definicje, tabele, indeksy i same dane) są zapisywane jako pojedynczy standardowy plik na komputerze głównym. Ten prosty projekt osiąga się poprzez zablokowanie całego pliku bazy danych na początku każdej transakcji.
O nowej wersji SQLite 3.32.0
Niedawno ogłoszono wersję SQLite 3.32.0, która zawiera kilka zmian, w tym ulepszoną wersję polecenia ANALYZE . Umożliwia ona częściowe zbieranie statystyk z bardzo dużych baz danych bez przeprowadzania pełnej analizy indeksów. Limit liczby rekordów skanowanych dla pojedynczego indeksu jest ustawiany za pomocą nowej dyrektywy „PRAGMA analysis_limit”.
Kolejną zmianą w nowej wersji SQLite jest nowa wirtualna tabela „bajtkod”, która dostarcza informacji o kodzie bajtowym przygotowanych poleceń.
Dodatkowo dodano warstwę sum kontrolnych VFS, która dodaje 8-bajtowe sumy kontrolne na końcu każdej strony danych w bazie danych i weryfikuje je przy każdym odczycie danych z bazy. Ta warstwa pośrednia umożliwia wykrywanie uszkodzeń bazy danych wynikających z losowych zniekształceń bitów na urządzeniach pamięci masowej.
Z drugiej strony dodano nową funkcję SQL iif (X, Y, Z), zwracającą wartość Y, jeśli wyrażenie X jest prawdziwe, lub Z w innym przypadku.
Wyrażenia INSERT i UPDATE teraz zawsze stosują warunki stałego typu kolumny przed blokiem obliczeniowym CHECK, a limit liczby parametrów został zwiększony z 999 do 32766.
Inne istotne zmiany w tej nowej wersji obejmują:
- Dodano rozszerzenie kolejności sortowania UINT z implementacją sekwencji sortowania, które uwzględniają liczby całkowite w tekście w celu sortowania tego tekstu w kolejności numerycznej.
- W interfejsie wiersza poleceń opcje „–csv”, „–ascii” i „–skip” zostały dodane do polecenia „.import”.
- Polecenie „.dump” pozwala na użycie wielu szablonów LIKE z łączeniem na wyjściu wszystkich tabel odpowiadających określonym maskom. Dodano polecenie „.oom” do debugowania kompilacji.
- Opcja –bom została dodana do poleceń „.excel”, „.output” i „.once”. Dodano opcję –schema do polecenia „.filectrl”.
- Wyrażenie ESCAPE określone za pomocą operatora LIKE zastępuje teraz symbole wieloznaczne, co jest zgodne z zachowaniem PostgreSQL.
Na koniec, jeśli chcesz dowiedzieć się więcej na temat wydania nowej wersji, możesz zapoznać się z listą zmian dostępną pod poniższym linkiem.
Rozładowanie
Osoby zainteresowane zainstalowaniem nowej wersji oprogramowania SQLite na swoim systemie mogą pobrać pakiety z oficjalnej strony internetowej w sekcji pobierania. Znajdują się tam zarówno kod źródłowy (do kompilacji), jak i wstępnie skompilowane pakiety.