SQLite

SQLite
Logo SQLite
Logo programu
ilustracja
Autor D. Richard Hipp
Pierwsze wydanie 2000-05-29 29 maja 2000(dts)
Aktualna wersja stabilna 3.54.1
(16 października 2026) [±]
Język programowania C
Rodzaj system zarządzania relacyjną bazą danych
Licencja domena publiczna
Strona internetowa
SQLite Database
ilustracja
Rozszerzenia pliku

.db, .sqlite, .sqlite3

Typ MIME

application/vnd.sqlite3

Data opracowania

18 czerwca 2004

Typ

kompaktowa baza danych

Otwarty format?

tak (domena publiczna)

Strona internetowa

SQLite – otwartoźródłowy system zarządzania relacyjną bazą danych oraz biblioteka C implementująca taki system, obsługująca SQL. Została stworzona przez Richarda Hippa(inne języki) i jest dostępna na licencji domeny publicznej. Projekt został rozpoczęty w 2000 roku przez D. Richarda Hippa na zlecenie Marynarki Wojennej Stanów Zjednoczonych do obsługi oprogramowania na niszczycielach rakietowych, gdzie kluczowym wymogiem było działanie bazy danych bez konieczności nadzoru administratora.

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 281 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. Baza udostępnia transakcje ACID oraz implementuje większość standardu SQL 92. 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 lub przechowywane w pamięci o dostępie swobodnym. 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 o nazwie SQLite Encryption Extension (SEE). Projekt wyróżnia się jednym z najbardziej rygorystycznych procesów testowania wśród oprogramowania open source. Na każdą linię kodu biblioteki przypada prawie 600 linii kodu testów i skryptów testowych, a rdzeń SQLite osiąga 100% pokrycia rozgałęzień kodu (ang. branch coverage), co przekłada się na wysoką stabilność działania.

SQLite obsługuje między innymi:

Niektórych z wymienionych cech brakuje nawet w rozbudowanych serwerach baz danych[których?], na przykład w MySQL w wersjach starszych niż 5.0.2 brakuje transakcji, a wydajność SQLite (przy obsłudze jednego użytkownika) w porównaniu z serwerami baz danych MySQL oraz PostgreSQL jest bardzo wysoka[potrzebny przypis].

Przypisy

  1. 1 2 SQLite Developers. sqlite.org. [dostęp 2021-01-02]. (ang.).
  2. 1 2 3 4 About SQLite. sqlite.org. [dostęp 2021-01-02]. (ang.).
  3. 1 2 The SQLite Amalgamation. sqlite.org. [dostęp 2021-02-04]. (ang.).
  4. ↑ Typ MIME dla baz danych SQLite w organizacji IANA. iana.org. [dostęp 2021-09-27]. (ang.).
  5. ↑ Database File Format. sqlite.org. [dostęp 2021-09-27]. (ang.).
  6. ↑ SQLite: SQLite Source Repository. sqlite.org. [dostęp 2021-06-21]. (ang.).
  7. ↑ Oficjalne repozytorium silnika SQLite. sqlite.org. [dostęp 2021-01-02]. (ang.).
  8. ↑ The Story of Dwayne Richard Hipp and the Development of SQLite in 1999. hackernoon.com/. [dostęp 2025-11-22]. (ang.).
  9. ↑ Implementation Limits For SQLite. sqlite.org. [dostęp 2021-01-02]. (ang.).
  10. ↑ Database File Format. sqlite.org. [dostęp 2021-02-04]. (ang.).
  11. ↑ In-Memory Databases. sqlite.org. [dostęp 2021-02-04]. (ang.).
  12. ↑ SQLite Encryption Extension: Documentation. sqlite.org. [dostęp 2021-02-04]. (ang.).
  13. ↑ How SQLite Is Tested. sqlite.org. [dostęp 2026-02-07]. (ang.).

Linki zewnętrzne