fbpx
Wikipedia

SQLite

SQLite es un sistema de gestión de bases de datos relacional compatible con ACID, contenida en una relativamente pequeña (~275 kiB)[2]biblioteca escrita en C. SQLite es un proyecto de dominio público[1]​ creado por D. Richard Hipp.

SQLite
Parte de sistema de gestión de bases de datos relacionales
Información general
Tipo de programa RDBMS
Autor D. Richard Hipp
Desarrollador D. Richard Hipp
Modelo de desarrollo Dominio Público
Lanzamiento inicial 17 de agosto de 2000 (21 años, 1 mes y 7 días)
Licencia Dominio público[1]
Información técnica
Programado en C
Versiones
Última versión estable 3.35.5 (info) 19 de abril de 2021 (5 meses y 5 días)
Archivos legibles
  • SQLite database file format
  • SQLite 3.x database
  • SQLite rollbak journal
Archivos editables
  • SQLite database file format
  • SQLite 3.x database
  • SQLite Zipvfs compressed database
  • SQLite rollbak journal
Enlaces
Sitio web oficial
Repositorio de código

A diferencia de los sistema de gestión de bases de datos cliente-servidor, el motor de SQLite no es un proceso independiente con el que el programa principal se comunica. En lugar de eso, la biblioteca SQLite se enlaza con el programa pasando a ser parte integral del mismo. El programa utiliza la funcionalidad de SQLite a través de llamadas simples a subrutinas y funciones. Esto reduce la latencia en el acceso a la base de datos, debido a que las llamadas a funciones son más eficientes que la comunicación entre procesos. El conjunto de la base de datos (definiciones, tablas, índices, y los propios datos), son guardados como un solo fichero estándar en la máquina host. Este diseño simple se logra bloqueando todo el fichero de base de datos al principio de cada transacción.

En su versión 3, SQLite permite bases de datos de hasta 2 Terabytes de tamaño, y también permite la inclusión de campos tipo BLOB.

El autor de SQLite ofrece formación, contratos de soporte técnico y características adicionales como compresión y cifrado.

Características

La biblioteca implementa la mayor parte del estándar SQL-92, incluyendo transacciones de base de datos atómicas, consistencia de base de datos, aislamiento, y durabilidad (ACID), triggers y la mayor parte de las consultas complejas.

SQLite usa un sistema de tipos inusual. En lugar de asignar un tipo a una columna como en la mayor parte de los sistemas de bases de datos SQL, los tipos se asignan a los valores individuales. Por ejemplo, se puede insertar un string en una columna de tipo entero (a pesar de que SQLite tratará en primera instancia de convertir la cadena en un entero). Algunos usuarios consideran esto como una innovación que hace que la base de datos sea mucho más útil, sobre todo al ser utilizada desde un lenguaje de scripting de tipos dinámicos. Otros usuarios lo ven como un gran inconveniente, ya que la técnica no es portable a otras bases de datos SQL. SQLite no trataba de transformar los datos al tipo de la columna hasta la versión 3.

Varios procesos o hilos pueden acceder a la misma base de datos sin problemas. Varios accesos de lectura pueden ser servidos en paralelo. Un acceso de escritura solo puede ser servido si no se está sirviendo ningún otro acceso concurrentemente. En caso contrario, el acceso de escritura falla devolviendo un código de error (o puede automáticamente reintentarse hasta que expira un tiempo de expiración configurable). Esta situación de acceso concurrente podría cambiar cuando se está trabajando con tablas temporales. Sin embargo, podría producirse un interbloqueo debido al multihilo.[1] Este punto fue tratado en la versión 3.3.4, desarrollada el 11 de febrero de 2006.

Existe un programa independiente de nombre sqlite que puede ser utilizado para consultar y gestionar los ficheros de base de datos SQLite. También sirve como ejemplo para la escritura de aplicaciones utilizando la biblioteca SQLite.

Lenguajes de programación

  • La biblioteca puede ser usada desde programas en C/C++, aunque están disponibles enlaces para Tcl y muchos otros lenguajes de programación interpretado.
  • SQLite se encuentra embebido en el REALbasic framework, haciendo posible que aplicaciones desarrolladas en REALbasic para Windows, Linux o Mac OS X usen la base de datos SQLite.
  • Existe un módulo DBI/DBD para Perl disponible en CPAN, DBD::SQLite, no es una interfaz para SQLite, sino que incluye el motor completo de SQLite en sí mismo por lo cual no necesita ningún software adicional.
  • Python incluye soporte para SQLite nativamente desde la versión 2.5 incorporado en la Biblioteca Estándar como el módulo sqlite3.[3]​ Para versiones anteriores de Python, el módulo no está incorporado y debe instalarse (su nombre es PySQLite).[4]
  • Hay otro módulo para Visual Basic 6 llamado
  • Desde Delphi se puede usar SQLite a través de los componentes libres ZeosLib.
  • PHP incluye SQLite, desde la versión 5. SQLite también funciona con PHP 4 pero no viene incluido en él. Para más detalles vea el manual y PECL info.
  • Desde Java se puede acceder mediante el driver de SQLite JDBC
  • Desde .NET se puede acceder usando el proyecto de código abierto System.Data.SQLite
  • Desde Lazarus 0.9.8 y Free Pascal 2.0.0, SQLite está disponibles para programadores de Pascal. Tutorial: «Lazarus Database Tutorial, Lazarus and SQLite» (en inglés). 
  • Mac OS X v10.4 incluye SQLite, y es una de las opciones en la Core Data API de Apple. AppleScript puede abrir, crear, y manipular base de datos SQLite por medio de la aplicación de ayuda "Database Events" de Mac OS X 10.4.
  • BlitzMAX posee un MOD que permite trabajar con bases de datos SQLite. Para más detalles y descarga del MOD vea [2].
  • El componente de base de datos (gb.db) de Gambas soporta SQLite en sus versiones 1, 2 y 3
  • El lenguaje de programación de videojuegos Bennu tiene un mod de SQlite disponible
  • El lenguaje de programación de scripting para Windows AutoIt v.3.x a través de la DLL SQLite.dll.
  • A Go (lenguaje de programación) se le pueden añadir controladores de terceros. Como mattn/go-sqlite3

Software que utiliza SQLite

SQLite es utilizado en un gran variedad de aplicaciones, destacando las siguientes:

  • Adobe Photoshop Elements utiliza SQLite como motor de base de datos en su última versión del producto (la 6.0) en sustitución del Microsoft Access, utilizado en las versiones anteriores.[5]
  • Clementine usa SQLite para guardar su colección de datos por defecto.
  • Kexi usa SQLite como un motor de base de datos interno por defecto.
  • Mozilla Firefox usa SQLite para almacenar, entre otros, las cookies, los favoritos, el historial y las direcciones de red válidas.[5]
  • Los desarrolladores de OpenOffice.org han considerado incluir SQLite en el modelo de base de datos de Base, pero esto depende en gran manera del progreso de sqlite-sdbc-driver, que está todavía en estado de alpha. Actualmente han decidido usar HSQLDB.
  • Varias aplicaciones de Apple utilizan SQLite, incluyendo Apple Mail y el gestor de RSS que se distribuye con Mac OS X. El software Aperture de Apple guarda la información de las imágenes en una base de datos SQLite, utilizando la API Core Data.[5]
  • El navegador web Opera usa SQLite para la gestión de bases de datos WebSQL.
  • Skype es otra aplicación de gran despliegue que utiliza SQLite.[6][5]
  • SQLFilter, un plugin para OmniPeek, usa SQLite para indexar paquetes en una base de datos para poder ser consultada por medio de SQL.
  • The New Yorker guarda el índice para un set de DVD conteniendo todos los números publicados por la revista.
  • XBMC Media Center (antes conocido como "XBox Media Center") es un reproductor de medios de audio, video, fotos, etc de código libre (open source) multi-plataforma a la vez que un centro de entretenimiento. Usa SQLite para administrar las librerías de música, video y fotografías, listas de reproducción y bookmarks entre otras utilidades menores.

Debido a su pequeño tamaño, SQLite es muy adecuado para los sistemas integrados, y también está incluido en:

Publicaciones

Referencias

  1. «SQLite Copyright». SQLite. Consultado el 28 de diciembre de 2010. 
  2. «Distinctive Features Of SQLite». SQLite. 3 de marzo de 2008. Consultado el 5 de abril de 2010. 
  3. Python Standard Library Reference, Capítulo 11.13. sqlite3 — DB-API 2.0 interface for SQLite databases (en inglés)
  4. . Archivado desde el original el 14 de julio de 2014. Consultado el 1 de marzo de 2010. 
  5. «Well-known Users of SQLite» (en inglés). SQLite. Consultado el 25 de septiembre de 2011. 
  6. . Mail-archive.com. 28 de agosto de 2007. Archivado desde el original el 28 de septiembre de 2014. Consultado el 14 de junio de 2010. 
  7. package android.database.sqlite

Enlaces externos

  • (en inglés)
  • SQLite Latinoamérica (en español)
  • (en inglés)
  • Nucleon Database Master (en inglés)
  •   Datos: Q319417
  •   Multimedia: SQLite
  •   MediaWiki: Manual:SQLite

sqlite, sistema, gestión, bases, datos, relacional, compatible, acid, contenida, relativamente, pequeña, biblioteca, escrita, proyecto, dominio, público, creado, richard, hipp, parte, sistema, gestión, bases, datos, relacionalesinformación, generaltipo, progra. SQLite es un sistema de gestion de bases de datos relacional compatible con ACID contenida en una relativamente pequena 275 kiB 2 biblioteca escrita en C SQLite es un proyecto de dominio publico 1 creado por D Richard Hipp SQLiteParte de sistema de gestion de bases de datos relacionalesInformacion generalTipo de programaRDBMSAutorD Richard HippDesarrolladorD Richard HippModelo de desarrolloDominio PublicoLanzamiento inicial17 de agosto de 2000 21 anos 1 mes y 7 dias LicenciaDominio publico 1 Informacion tecnicaProgramado enCVersionesUltima version estable3 35 5 info 19 de abril de 2021 5 meses y 5 dias Archivos legiblesSQLite database file formatSQLite 3 x databaseSQLite rollbak journalArchivos editablesSQLite database file formatSQLite 3 x databaseSQLite Zipvfs compressed databaseSQLite rollbak journalEnlacesSitio web oficial Repositorio de codigo editar datos en Wikidata A diferencia de los sistema de gestion de bases de datos cliente servidor el motor de SQLite no es un proceso independiente con el que el programa principal se comunica En lugar de eso la biblioteca SQLite se enlaza con el programa pasando a ser parte integral del mismo El programa utiliza la funcionalidad de SQLite a traves de llamadas simples a subrutinas y funciones Esto reduce la latencia en el acceso a la base de datos debido a que las llamadas a funciones son mas eficientes que la comunicacion entre procesos El conjunto de la base de datos definiciones tablas indices y los propios datos son guardados como un solo fichero estandar en la maquina host Este diseno simple se logra bloqueando todo el fichero de base de datos al principio de cada transaccion En su version 3 SQLite permite bases de datos de hasta 2 Terabytes de tamano y tambien permite la inclusion de campos tipo BLOB El autor de SQLite ofrece formacion contratos de soporte tecnico y caracteristicas adicionales como compresion y cifrado Indice 1 Caracteristicas 2 Lenguajes de programacion 3 Software que utiliza SQLite 4 Publicaciones 5 Referencias 6 Enlaces externosCaracteristicas EditarLa biblioteca implementa la mayor parte del estandar SQL 92 incluyendo transacciones de base de datos atomicas consistencia de base de datos aislamiento y durabilidad ACID triggers y la mayor parte de las consultas complejas SQLite usa un sistema de tipos inusual En lugar de asignar un tipo a una columna como en la mayor parte de los sistemas de bases de datos SQL los tipos se asignan a los valores individuales Por ejemplo se puede insertar un string en una columna de tipo entero a pesar de que SQLite tratara en primera instancia de convertir la cadena en un entero Algunos usuarios consideran esto como una innovacion que hace que la base de datos sea mucho mas util sobre todo al ser utilizada desde un lenguaje de scripting de tipos dinamicos Otros usuarios lo ven como un gran inconveniente ya que la tecnica no es portable a otras bases de datos SQL SQLite no trataba de transformar los datos al tipo de la columna hasta la version 3 Varios procesos o hilos pueden acceder a la misma base de datos sin problemas Varios accesos de lectura pueden ser servidos en paralelo Un acceso de escritura solo puede ser servido si no se esta sirviendo ningun otro acceso concurrentemente En caso contrario el acceso de escritura falla devolviendo un codigo de error o puede automaticamente reintentarse hasta que expira un tiempo de expiracion configurable Esta situacion de acceso concurrente podria cambiar cuando se esta trabajando con tablas temporales Sin embargo podria producirse un interbloqueo debido al multihilo 1 Este punto fue tratado en la version 3 3 4 desarrollada el 11 de febrero de 2006 Existe un programa independiente de nombre sqlite que puede ser utilizado para consultar y gestionar los ficheros de base de datos SQLite Tambien sirve como ejemplo para la escritura de aplicaciones utilizando la biblioteca SQLite Lenguajes de programacion EditarLa biblioteca puede ser usada desde programas en C C aunque estan disponibles enlaces para Tcl y muchos otros lenguajes de programacion interpretado SQLite se encuentra embebido en el REALbasic framework haciendo posible que aplicaciones desarrolladas en REALbasic para Windows Linux o Mac OS X usen la base de datos SQLite Existe un modulo DBI DBD para Perl disponible en CPAN DBD SQLite no es una interfaz para SQLite sino que incluye el motor completo de SQLite en si mismo por lo cual no necesita ningun software adicional Python incluye soporte para SQLite nativamente desde la version 2 5 incorporado en la Biblioteca Estandar como el modulo sqlite3 3 Para versiones anteriores de Python el modulo no esta incorporado y debe instalarse su nombre es PySQLite 4 Hay otro modulo para Visual Basic 6 llamado VBSqlite Desde Delphi se puede usar SQLite a traves de los componentes libres ZeosLib PHP incluye SQLite desde la version 5 SQLite tambien funciona con PHP 4 pero no viene incluido en el Para mas detalles vea el manual y PECL info Desde Java se puede acceder mediante el driver de SQLite JDBC Desde NET se puede acceder usando el proyecto de codigo abierto System Data SQLite Desde Lazarus 0 9 8 y Free Pascal 2 0 0 SQLite esta disponibles para programadores de Pascal Tutorial Lazarus Database Tutorial Lazarus and SQLite en ingles Mac OS X v10 4 incluye SQLite y es una de las opciones en la Core Data API de Apple AppleScript puede abrir crear y manipular base de datos SQLite por medio de la aplicacion de ayuda Database Events de Mac OS X 10 4 BlitzMAX posee un MOD que permite trabajar con bases de datos SQLite Para mas detalles y descarga del MOD vea 2 El componente de base de datos gb db de Gambas soporta SQLite en sus versiones 1 2 y 3 El lenguaje de programacion de videojuegos Bennu tiene un mod de SQlite disponible El lenguaje de programacion de scripting para Windows AutoIt v 3 x a traves de la DLL SQLite dll A Go lenguaje de programacion se le pueden anadir controladores de terceros Como mattn go sqlite3Software que utiliza SQLite EditarSQLite es utilizado en un gran variedad de aplicaciones destacando las siguientes Adobe Photoshop Elements utiliza SQLite como motor de base de datos en su ultima version del producto la 6 0 en sustitucion del Microsoft Access utilizado en las versiones anteriores 5 Clementine usa SQLite para guardar su coleccion de datos por defecto Kexi usa SQLite como un motor de base de datos interno por defecto Mozilla Firefox usa SQLite para almacenar entre otros las cookies los favoritos el historial y las direcciones de red validas 5 Los desarrolladores de OpenOffice org han considerado incluir SQLite en el modelo de base de datos de Base pero esto depende en gran manera del progreso de sqlite sdbc driver que esta todavia en estado de alpha Actualmente han decidido usar HSQLDB Varias aplicaciones de Apple utilizan SQLite incluyendo Apple Mail y el gestor de RSS que se distribuye con Mac OS X El software Aperture de Apple guarda la informacion de las imagenes en una base de datos SQLite utilizando la API Core Data 5 El navegador web Opera usa SQLite para la gestion de bases de datos WebSQL Skype es otra aplicacion de gran despliegue que utiliza SQLite 6 5 SQLFilter un plugin para OmniPeek usa SQLite para indexar paquetes en una base de datos para poder ser consultada por medio de SQL The New Yorker guarda el indice para un set de DVD conteniendo todos los numeros publicados por la revista XBMC Media Center antes conocido como XBox Media Center es un reproductor de medios de audio video fotos etc de codigo libre open source multi plataforma a la vez que un centro de entretenimiento Usa SQLite para administrar las librerias de musica video y fotografias listas de reproduccion y bookmarks entre otras utilidades menores Debido a su pequeno tamano SQLite es muy adecuado para los sistemas integrados y tambien esta incluido en Android 7 5 BlackBerry Windows Phone 8 Google Chrome 5 iOS 5 Firefox OS Maemo MeeGo Symbian OS 5 webOSPublicaciones EditarOwens Mike 2006 The Definitive Guide to SQLite Apress ISBN 1 59059 673 0 Kreibich Jay A 2010 Using SQLite O Reilly Media ISBN 978 0596521189 Referencias Editar a b SQLite Copyright SQLite Consultado el 28 de diciembre de 2010 Distinctive Features Of SQLite SQLite 3 de marzo de 2008 Consultado el 5 de abril de 2010 Python Standard Library Reference Capitulo 11 13 sqlite3 DB API 2 0 interface for SQLite databases en ingles PySQLite Bindings para Python Archivado desde el original el 14 de julio de 2014 Consultado el 1 de marzo de 2010 a b c d e f g h Well known Users of SQLite en ingles SQLite Consultado el 25 de septiembre de 2011 Skype client using SQLite Mail archive com 28 de agosto de 2007 Archivado desde el original el 28 de septiembre de 2014 Consultado el 14 de junio de 2010 package android database sqliteEnlaces externos EditarSitio Oficial de SQLite en ingles SQLite Latinoamerica en espanol Entrevista con Richard Hipp en ingles Nucleon Database Master en ingles Datos Q319417 Multimedia SQLite MediaWiki Manual SQLiteObtenido de https es wikipedia org w index php title SQLite amp oldid 135025358, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos