SQLite
SQLite je relační databázový systém obsažený v relativně malé knihovně napsané v C. Je vyvíjen D. Richardem Hippem a šířen pod licencí public domain.
Popis
Na rozdíl od databází založených na principu klient-server, kde je databázový server spuštěn jako samostatný proces, je SQLite pouze malá knihovna, která se přilinkuje k aplikaci a pomocí jednoduchého rozhraní ji lze začít využívat. Každá databáze je uložena v samostatném souboru .dbm (Database Manager), kde se data ukládají za použití jednoduchého primárního klíče do stejně velkých bloků a používá hašovacích technik pro rychlý přístup k datům při vyhledávání podle klíče.
Charakteristické prvky
- absence databázového systému ve formě abstrahovaného prostředí
- absence konfigurace (částečně lze přizpůsobit příkazy PRAGMA)
- absence serveru
- databáze v jednom souboru, nezávislém na platformě; to s sebou nese výhody (migrace) i nevýhody (fragmentace)
- Zdroj: [1]
Rozsah SQLite
V SQLite je implementován téměř celý standard SQL-92 a též některé nadstandardní prvky (UTF-8/16, REPLACE INTO, ON CONFLICT,[2] uživatelské funkce a uživatelské řazení).
Z toho, co implementováno není:[3]
- OUTER RIGHT JOIN, OUTER FULL JOIN
- ALTER TABLE DROP COLUMN, ALTER COLUMN, ADD CONSTRAINT
- GRANT, REVOKE (vzhledek k databázi coby jednoduchému souboru, nikoli kompletního abstrahovaného prostředí)
Použití
Databázi SQLite lze použít například v programovacích jazycích C, C++, Delphi, Java, Lua, PHP, Python, Perl, Ruby, Tcl, REALbasic. Předkompilované binárky jsou k dispozici pro Linux, Mac OS X a Windows.
Formát databázovových souborů je přitom nezávislý na operačním systému a SQLite tak představuje i zajímavý a jednoduchý nástroj pro přenos strukturovaných dat.
SQLite je mimo jiné použit například v komunikátoru Skype, software A350 XWB výrobce letadel Airbus, v prohlížečích Safari a Chrome (jako součást cacheování) či antivirových programech firmy McAfee, dokonce i výrobcích iPod a iPhone firmy Apple.[4]