SQLite
SQLite (anglická výslovnost [ˌeskjuːelˈlait], někdy též [siːkwəl.lait]) je relační databázový systém obsažený v relativně malé knihovně (~700 KB) napsané v C. Je vyvíjen D. Richardem Hippem a šířen pod licencí public domain.
Vývojář | D. Richard Hipp |
---|---|
První vydání | 17. srpna 2000 |
Aktuální verze | 3.37.0 (27. listopadu 2021[1]) |
Operační systém | GNU/Linux, MS Windows, macOS |
Vyvíjeno v | C |
Typ softwaru | Relační databáze |
Licence | Public domain[2] |
Web | sqlite.org |
Některá data mohou pocházet z datové položky. |
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 nevelká knihovna, která, po přilinkování k aplikaci, je k dispozici pomocí jednoduchého rozhraní. 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
Charakteristickými prvky systému SQLite jsou:[3]
- 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)
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,[4] uživatelské funkce a uživatelské řazení).
Z toho, co implementováno není:[5]
- OUTER RIGHT JOIN, OUTER FULL JOIN
- ALTER TABLE DROP COLUMN, ALTER COLUMN, ADD CONSTRAINT
- GRANT, REVOKE (vzhledem k databázi coby jednoduchému souboru, nikoli kompletního abstrahovaného prostředí)
Z toho, co implementováno je:[6]
- WITH (ev. RECURSIVE)
Použití
Databázi SQLite lze použít například v programovacích jazycích C, C++, C#, Delphi, Java, Lua, PHP, Python, Perl, Ruby, Tcl, REALbasic. Předkompilované binárky jsou k dispozici pro Linux, macOS a MS Windows. SQLite je vestavěná i v mobilním systému Android.[7]
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.
Význační uživatelé SQLite
Aplikace Kexi, součást KOffice, SQLite umí otevírat a editovat. 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.[8] Adobe Systems v něm u některých svých programů ukládá nainstalované klíče z registry. SQLite se také často používá v operačním systému Android k uložení persistentních dat aplikací. V systému Solaris 11 je použita pro ukládání metadat SMF.
Odkazy
Reference
- SQLite Release 3.37.0. [s.l.]: [s.n.], 2021-11-27. Dostupné online. (anglicky)
- SQLite Copyright [online]. [cit. 2017-08-06]. Dostupné online. (anglicky)
- Distinctive Features Of SQLite [online]. [cit. 2017-08-06]. Dostupné online. (anglicky)
- SQLite Query Language: ON CONFLICT clause [online]. [cit. 2017-08-06]. Dostupné online. (anglicky)
- SQL Features That SQLite Does Not Implement [online]. [cit. 2017-08-06]. Dostupné online. (anglicky)
- SQLite Query Language: WITH clause [online]. [cit. 2017-06-25]. Dostupné online. (anglicky)
- Storage Options [online]. Android developers [cit. 2017-08-06]. Odstavec Using Databases. Dostupné online. (anglicky)
- Well-Known Users Of SQLite [online]. [cit. 2017-08-06]. Dostupné online. (anglicky)
Externí odkazy
- Obrázky, zvuky či videa k tématu SQLite na Wikimedia Commons
- Seriál o SQLite
- SQLite – ultra lehké sql na Root.cz