SQLite to lekki silnik relacyjnej bazy danych, dostępny za pośrednictwem języka SQL. W przeciwieństwie do tradycyjnych serwerów baz danych, takich jak MySQL lub PostgreSQL, jego cechą szczególną nie jest odtwarzanie zwykłego schematu klient-serwer, ale integracja bezpośrednio z programami.
Kompletna baza danych (wyciągi, tabele, indeksy i dane) jest przechowywany w pliku niezależnym od platformy. Dzięki swojej niezwykłej lekkości znajduje zastosowanie m.in. w wielu programach konsumenckich, a także jest bardzo popularny w systemach wbudowanych, w tym w najnowocześniejszych smartfonach.
W przeciwieństwie do systemów zarządzania bazami danych klient-serwer, silnik SQLite nie jest samodzielnym procesem z którym komunikuje się program główny. Zamiast, biblioteka SQLite jest połączona 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 została ogłoszona nowa wersja SQLite 3.32.0, w której zaimplementowano kilka zmian, a wśród nich przybliżona wersja polecenia ANALIZA jest podświetlonaktóry pozwala kilku bardzo dużym bazom danych zajmować się częściowym gromadzeniem statystyk i bez pełnej analizy wskaźników. Ograniczenie liczby rekordów podczas skanowania pojedynczego indeksu jest ustalane przy użyciu nowej dyrektywy „PRAGMA analysis_limit”.
Kolejną zmianą, która pojawia się w nowej wersji SQLite, jest nowy wirtualny stół „Bytecode”, który dostarcza informacji o kodzie bajtowym przygotowanych wyciągów.
Ponadto, dodano warstwę kontrolną VFS, dodawanie 8-bajtowych sum kontrolnych na końcu każdej strony danych w bazie danych i sprawdzanie za każdym razem, gdy są one odczytywane z bazy danych. Warstwa środkowa może wykryć uszkodzenie bazy danych w wyniku losowego zniekształcenia 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 stosowały warunki przypinania kolumn przed blokiem obliczeń CHECK, a limit liczby parametrów został zwiększony z 999 do 32766.
Z innych zmian, które się wyróżniają tej nowej wersji:
- 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.
W końcu jeśli chcesz dowiedzieć się więcej na ten temat o wydaniu tej nowej wersji możesz sprawdzić listę zmian W poniższym linku.
Rozładowanie
Dla tych, którzy są zainteresowani możliwością zainstalowania tej nowej wersji SQLite w swoim systemie, będą mogli pobrać paczki ze swojej oficjalnej strony internetowej w sekcji pobierania, gdzie dostępny jest zarówno kod źródłowy (do kompilacji), jak i prekompilowane pakiety.