SQLite

SQLite on tietokannan hallintajärjestelmä. Se on toteutettu pienenä (~225 kt) C-kirjastona. Toisin kuin monet muut relaatiotietokannat, koko SQLite-järjestelmä linkitetään sitä käyttävään sovellukseen ja sitä käytetään ohjelman sisällä funktiokutsujen kautta, joten erillistä ODBC-yhteyttä, tietokannanhallintaohjelmaa tai tietokantapalvelinta ei tarvita. Itse tietokanta voidaan pitää kokonaan tietokoneen muistissa, tai tallentaa yhteen tiedostoon, joka lukitaan transaktioiden ajaksi. SQLite soveltuu tämän takia erityisesti tietokantajärjestelmän lisäämiseen sovellusohjelmiin.

SQLite tukee suurinta osaa SQL-kielen SQL-92-standardista. Standardista puuttuvia osia ovat esimerkiksi viiteavaimet, joten SQLite ei valvo ACID-mallin yhdenmukaisuussääntöä, mutta muut osat ACIDista on toteutettu. SQLite käyttää epätavallista tietotyyppijärjestelmää: kun useimmissa tietokannoissa tyyppi on sarakekohtainen, SQLitessä tyyppi on arvokohtainen; SQLiteä voikin kuvata dynaamisesti tyypitetyksi tietokannaksi staattisesti tyypitetyn sijaan. SQLiten tietokannan sarakeleveyksiä ei myöskään tarvitse määrittää kiinteästi jolloin tietokanta varaa muistia vain sen verran kuin sen sisällä oleva data edellyttää. Tekstimuotoiset tietotyypit tallennetaan oletuksena UTF-8-koodattuna.

SQLite-kirjasto on public domain -ohjelmisto, joten sitä voidaan muokata ja levittää vapaasti ja se voidaan linkittää kaikkiin ohjelmistoihin ilman erillistä lupaa.
Ohjelmiston kehittäjä D. Richard Hipp myy lisäksi koulutusta, tukea ja lisäosia.
SQLiten ohjelmointirajapinta ja tietokantojen tiedostomuoto on luvattu pitää yhteensopivana vuoteen 2050 asti.

SQLite on maailman käytetyin tietokantaohjelma, joka tulee mm. jokaisen Android ja iPhone -puhelimen mukana, jokaisessa Windows 10 ja macOS -asennuksessa, Firefox, Chrome ja Safari -selaimissa, jokaisessa Skype tai iTunes -ohjelmassa. Se kuuluu luultavasti maailman viiden levinneimmän ohjelmistokirjaston joukkoon.

Lähteet

Aiheesta muualla 

 SQLiten virallinen sivusto

Linux-ohjelmat
Tietokantojen hallintajärjestelmät
Vapaat ohjelmistot