SQLite
Logo programu
Rodzaj baza danych
Pierwsze wydanie 29 maja 2000
Aktualna wersja stabilna 3.6.7 - 16 grudnia 2008; 13 dni temu
Producent D. Richard Hipp
Licencja Public domain
www.sqlite.org

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.

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: 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 2 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 ma kilka ciekawych rozwiązań takich jak:

  • ObsÅ‚uga zapytaÅ„ zagnieżdżonych
  • ObsÅ‚uga widoków
  • ObsÅ‚uga transakcji
  • ObsÅ‚uga triggerów (niepeÅ‚na)
  • Możliwość definiowania wÅ‚asnych funkcji
  • Możliwość obsÅ‚ugi bazy danych przechowywanej w caÅ‚oÅ›ci w pamiÄ™ci RAM komputera, co dodatkowo przyspiesza dziaÅ‚anie

Należy zaznaczyć, że niektórych z nich brakuje nawet w tak rozbudowanych serwerach baz danych jak MySQL, a wydajność SQLite (przy obsłudze jednego użytkownika) w porównaniu z serwerami baz danych MySQL oraz PostgreSQL jest bardzo wysoka.

[edytuj] 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.
  • 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.
  • 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.
  • 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.

[edytuj] Narzędzia do zarządzania bazami danych SQLite

[edytuj] Linki zewnętrzne