SQLite
![]() Logo programu | |
![]() | |
Autor | D. Richard Hipp |
---|---|
Pierwsze wydanie | (dts) | 29 maja 2000
Aktualna wersja stabilna | 3.8.10.2 / 20 maja 2015; ponad 10 lat temu[1] |
Rodzaj | baza danych |
Licencja | Public domain |
Strona internetowa |
SQLite – to system zarządzania bazą danych oraz biblioteka C implementująca taki system, obsługująca język SQL (ang. Structured Query Language). Została stworzona przez Richarda Hippa i jest dostępna na licencji public domain. Projekt został rozpoczęty w roku 2000[potrzebny przypis].
Biblioteka implementuje silnik SQL, dając możliwość używania bazy danych bez konieczności uruchamiania osobnego procesu RDBMS. W wielu zastosowaniach, a w szczególności w systemach wbudowanych, takie rozwiązanie jest najpraktyczniejsze.
SQLite posiada również API do innych niż C języków programowania, a mianowicie: ActionScript, Perl, PHP, Ruby, C++, Delphi, Python, Java, Tcl, Visual Basic, platformy .NET i wielu innych; a także interfejs powłokowy. Baza może łączyć się przez ODBC.
Zawartość bazy danych przetrzymywana jest w jednym pliku (do 140 TB). Baza SQLite jest utrzymywana na dysku przy użyciu B-drzew. Osobne drzewo jest używane dla każdej z tabel i każdego z indeksów. SQLite udostępnia transakcje ACID oraz implementuje większość standardu SQL 92. SQLite jest często wykorzystywany w większych aplikacjach oraz w systemach obsługi relacyjnych baz danych takich jak Kexi.
Bazy danych zapisywane są jako pliki binarne. Ich bezpieczeństwo jest oparte na zabezpieczeniach oferowanych przez używany system plików. Istnieje też projekt oferujący szyfrowanie baz danych SQLite na bieżąco.
SQLite obsługuje między innymi:
- zapytania zagnieżdżone,
- widoki,
- klucze obce,
- transakcje,
- wyzwalacze (częściowo),
- definiowanie własnych funkcji,
- przechowywanie baz danych w pamięci RAM komputera, co znacznie przyspiesza działanie.
Należy zaznaczyć, że niektórych z nich brakuje nawet w rozbudowanych serwerach baz danych, a wydajność SQLite (przy obsłudze jednego użytkownika) w porównaniu z serwerami baz danych MySQL oraz PostgreSQL jest bardzo wysoka.
Zastosowanie
Baza danych SQLite jest wbudowana między innymi w następujące aplikacje:
- Adobe AIR – środowisko wykonawcze na różne systemy operacyjne do uruchamiania aplikacji pulpitu.
- Mozilla Firefox – wiodąca przeglądarka internetowa na licencji open source; w bazach danych przechowywane są profile użytkowników (m.in. informacje o rozszerzeniach, ciasteczka, ostatnio pobrane pliki, historia wyrazów i wyrażeń wpisywanych przez użytkownika w polach wyszukiwania Mozilla Firefox oraz polach formularzy witryn WWW odwiedzanych przez użytkownika, dane offline przechowywane przez aplikacje internetowe).
- DBD::SQLite – moduł Perl zgodny z DBI, dostarczający jednolity interfejs SQL.
- Ruby on Rails – domyślna baza danych w Ruby on Rails 2.0.
- Android – środowisko programistyczne dla urządzeń przenośnych, zaprojektowane przez Google; do przechowywania danych użytkownika.
- Mac OS X – począwszy od wersji 10.4 (Tiger), warstwa przechowywania danych dla Core Data API.
- musikCube – odtwarzacz muzyki; do przechowywania danych biblioteki mediów.
- Gears – lokalna baza danych zintegrowana z przeglądarką internetową; umożliwia wykonywanie zapytań SQL z poziomu JavaScript.
- Digikam – program do zarządzania zdjęciami cyfrowymi, przeznaczony dla środowiska graficznego KDE; umożliwia pobieranie zdjęć z aparatu cyfrowego oraz ich organizowanie, przeglądanie i prostą edycję.
- Adobe Photoshop Lightroom – program do importowania i katalogowania zdjęć z aparatów cyfrowych, obróbki obrazów w formacie RAW.
- FotoTime FotoAlbum – program do katalogowania, organizowania i elementarnej obróbki zdjęć.
- Mozy – oprogramowanie do wykonywania kopii zapasowych w trybie online; do przechowywania danych konfiguracyjnych, ustawień kopii, stanu danych itp.
- Avira Antivir – oprogramowanie antywirusowe.
- Avast! Antivir – oprogramowanie antywirusowe.
- Zotero – oprogramowanie do zarządzania źródłami informacji.
- REALbasic – obiektowy język BASIC dla wielu systemów operacyjnych.
- Trac – popularny, na licencji open source, zintegrowany system zarządzania projektami; używa domyślnie SQLite do przechowywania danych.
- Apple iPhone – multimedialne urządzenie przenośne.
- Tcl – domyślna baza danych w Tcl 8.6
- PHP – jako jeden z rodzajów baz danych
- Python – jako jeden z rodzajów baz danych
- SQLdf – jako domyślny silnik zapytań biblioteki SQLdf służącej do odpytywania ramek danych w środowisku GNU R
Narzędzia do zarządzania bazami danych SQLite
- SQLite Manager, dodatek przeglądarki Mozilla Firefox do zarządzania bazami danych SQLite.
- DaDaBIK Database Interface Kreator (Open Source)
- SQLite Database Browser, graficzne narzędzie do zarządzania bazami danych SQLite.
- SQLiteSpy – Win32, Unicode, Freeware.
- Lita, aplikacja Adobe AIR do zarządzania bazami danych SQLite.
- SQLiteStudio, darmowa aplikacja do zarządzania bazami danych SQLite w wersjach 2 i 3.
- PhpLiteAdmin, darmowa aplikacja napisana w PHP.
- ↑ Release History. [dostęp 2015-07-25]. (ang.).