SQLite

De la Viquipèdia, l'enciclopèdia lliure.
Saltar a la navegació Saltar a la cerca
SQLite
programari
Logotip
Tipus Sistema de gestió de bases de dades relacionals
Desenvolupador Dwayne Richard Hipp
Data de la primera versió Agost de 2000
Última versió 3.36.0 (18 de juny de 2021)
Sistema operatiu Multiplataforma
Llenguatge C.
Llicència Domini públic o llicència comercial
( llicència gratuïta )
Llengua Anglès
Lloc web sqlite.org

SQLite és una biblioteca de programari escrita en llenguatge C que implementa un SGBD SQL tipus ACID que es pot incorporar a les aplicacions. El seu creador, D. Richard Hipp , el va llançar al domini públic , fent-lo útil sense cap restricció. Permet crear una base de dades (incloses taules , consultes , formularis , informes ) incrustada en un sol fitxer, com en el cas dels mòduls Access de Microsoft Office i Base d’ OpenOffice.org i Libre Office ; de manera similar a productes específics com Paradox o Filemaker .

SQLite no és un procés autònom utilitzable per si mateix, però es pot incorporar a un altre programa. Es pot utilitzar amb el llenguatge C / C ++ , i també hi ha enllaços per a altres idiomes, en particular Tcl . També s'ha integrat a la versió 5 de PHP , cosa que permet a aquest popular llenguatge tenir un altre RDBMS independentment de la presència de MySQL . S'utilitza a Mozilla Firefox i Seamonkey per emmagatzemar adreces d'interès , historial de navegació i altra informació.

Funcions i limitacions

La biblioteca ofereix moltes funcions interessants:

  • és compacte (menys de 500 KB per a tota la biblioteca a la versió 3.6.14);
  • és molt ràpid; en molts casos més que MySQL i PostgreSQL ;
  • el codi font està disponible de manera gratuïta, clar i ben comentat;
  • és capaç d'interpretar les cadenes SQL; a diferència d'altres biblioteques similars, admet la majoria de l'estàndard SQL 92;
  • té la capacitat d'interpretar camps en JSON;
  • l' API és senzill d'utilitzar;
  • transaccions atòmiques, consistents, aïllades i duradores ( ACID ), fins i tot en cas de fallida del sistema o tall de subministrament elèctric;
  • és multiplataforma ;
  • inclou una utilitat de línia d' ordres per accedir a la base de dades també manualment (com en MySQL, Postgresql i moltes altres bases de dades) o mitjançant scripts;
  • admet bases de dades que poden ser molt grans; actualment el límit és de 140 TB ( byte) amb una línia de mida màxima igual a 1 GB [1] ;
  • una base de dades consisteix en un sol fitxer, el format intern del qual és independent de la plataforma i del seu ordre de bytes ;
  • no té dependències externes;
  • normalment no requereix cap treball administratiu, però admet l'ordre "SQL VACUUM" en cas que sigui necessari compactar explícitament les dades de la base de dades.

SQLite té algunes limitacions relacionades en part amb el propòsit d'una base de dades simple que s'incorpori a altres aplicacions:

  • no ofereix procediments emmagatzemats .
  • no preveu la gestió dels permisos d'accés, delegats al programari amb el qual interactueu amb la base de dades i / o al mecanisme de permisos del sistema de fitxers ; [2]
  • no té una gestió de simultaneïtat real: les aplicacions que l’utilitzen, si cal, l’han d’implementar;
  • per assegurar la coherència del fitxer de base de dades, s’utilitzen bloquejos del sistema de fitxers i, per tant, pot haver-hi problemes si aquest no els implementa correctament, per exemple amb sistemes de fitxers de xarxa (com NFS );
  • no ofereix cap memòria cau per a consultes (i no té la possibilitat, ja que no hi ha cap procés de servidor central);
  • no té protocols de xarxa, ja que no es pot utilitzar com a programa independent; és possible utilitzar una base de dades remota, però només a través del sistema de fitxers de xarxa del sistema operatiu , amb rendiments difícils d'acceptar;
  • no admet algunes construccions SQL importants com RIGHT JOIN i FULL OUTER JOIN; [2]
  • no admet subquestes variables.
  • no admet l'escriptura directa a visualitzacions (s'ha d'utilitzar el disparador "INSTEAD OF"); [2]
  • no admet els activadors de tipus "PER A CADA DECLARACIÓ" (només "PER A CADA FILA", possiblement combinat amb "EN lloc de"); [2]
  • el programador ha d’activar el suport per a desencadenants recursius i restriccions a les claus externes , introduït respectivament a les versions 3.6.18 i 3.6.19; aquest comportament, a causa de la compatibilitat amb versions anteriors, es canviarà a partir de la versió 3.7.

Una peculiaritat de SQLite és la gestió flexible dels tipus de dades: cada camp pot contenir qualsevol tipus de dades (o gairebé; gestionades de manera diferent a la versió 2 i 3).

Interfícies gràfiques per SQLite

Tot i que són manejables per altres aplicacions, hi ha interfícies gràfiques especialment desenvolupades per SQLite:

  • DaDaBIK (lloc) : programari propietari escrit en PHP que us permet crear un front-end web per SQLite sense escriure codi. També per a MySQL i PostgreSQL;
  • SpatiaLite (lloc) Arxivat el 22 de juliol de 2011 a Internet Archive .- Extensió per al suport de dades geogràfiques dins de bases de dades SQLite, es pot utilitzar des de la consola o mitjançant una interfície gràfica dedicada.
  • Navegador de bases de dades per a SQLite (lloc) : és una aplicació multiplataforma que permet gestionar bases de dades SQLite d’una manera simplificada, amb una interfície gràfica; Llicència de domini públic
  • TkSQLite (lloc) : aplicació multiplataforma. Llicència a l'estil BSD
  • sqlite-manager (lloc) : és una extensió per a navegadors basats en Gecko multiplataforma (Firefox 3, Thunderbird 3, Seamonkey 2, Sunbird 1.0, Komodo 5.0, etc.), que us permet gestionar de manera simplificada amb interfície gràfica del navegador, base de dades SQLite;
  • SQLiteManager (lloc) : és una aplicació basada en web multiplataforma que us permet gestionar bases de dades SQLite d’una manera simplificada, amb una interfície gràfica; llengua francesa
  • Sqliteman (lloc) - aplicació creada amb biblioteques Qt4 - versió per a GNU / Linux , Mac, Windows, requereix SQLite versió 3.
  • Database Master (lloc) per a Windows, també per a MySQL , PostgreSQL, FireBird, Oracle, DB2, Informix, ODBC, OleDB, SQL-Server, MongoDB.
  • Sqlite-Workbench (lloc) : aplicació en línia per a la gestió gràfica de bases de dades sql

Difusió [3]

Chromium (i per tant també Google Chrome ), Mozilla Firefox i Mozilla Thunderbird emmagatzemen informació de configuració (marcadors, galetes, contactes de la llibreta d’adreces, etc.) a les bases de dades SQLite. Skype és un altre programari popular que utilitza SQLite. [4] Adobe utilitza SQLite com a format de fitxer a Adobe Photoshop Lightroom , com a base de dades de suport d'aplicacions a Adobe AIR i internament a Adobe Reader . [5]

Gràcies a la seva petita mida, SQLite és especialment adequat per a sistemes incrustats . SQLite també s’utilitza a iOS i MacOS per a la gestió d’SMS i MMS, calendari, historial de trucades i emmagatzematge de contactes. La biblioteca també s’utilitza a Symbian OS i Android , al sistema operatiu BlackBerry i a Palm webOS . [6]

Nota

Altres projectes

Enllaços externs

Control de l'autoritat GND ( DE ) 7544619-4