Cómo acceder a bases de datos SQLite
- Detalles
- Categoría: Intermedio
- Creado en Jueves, 04 Octubre 2012 17:03
- Visitas: 969
El propósito de este artículo es explicar cómo acceder a una base de datos SQLite desde la línea de comandos en GNU/Linux. La necesidad de "conectar" o mejor dicho abrir una base de datos SQLite, surgió porque debía modificar una cuenta de usuario en una instalación de MediaWiki que utiliza SQLite como motor de base de datos.
SQLite es una librería que implementa un motor de bases de datos SQL transaccional que no necesita servidor ni configuración, por lo tanto las bases de datos SQLite son archivos que se acceden de forma local. En el sitio oficial "venden" a SQLite como el motor de bases de datos más utilizado en el mundo:
"SQLite is the most widely deployed SQL database engine in the world. The source code for SQLite is in the public domain."
Esta aseveración es correcta ya que todos los dispositivos que ejecutan Android utilizan SQLite como motor de base de datos (si tu teléfono ejecuta Android, tus contactos, SMSs, llamadas, bookmarks, etc. se guardan en bases de datos SQLite). Ya que en el mundo hay mayor cantidad de dispositivos con Android que servidores de bases de datos Oracle, MySQL, PostgreSQL, MSSQL, Informix, Firebird, etc., etc. los muchachos de SQLite no mienten.9N39DH23RS65
Para abrir una base de datos SQLite es necesario instalar el paquete sqlite3, en este caso estoy utilizando Debian, por lo tanto ejecuto:
apt-get install sqlite3
Luego es posible "conectarse" a la base de datos mediante el comando sqlite3 especificando el nombre de archivo:
# sqlite3 my_db SQLite version 3.7.3 Enter ".help" for instructions Enter SQL statements terminated with a ";"
La sentencia .help imprime la ayuda de SQLite:
sqlite> .help
.backup ?DB? FILE Backup DB (default "main") to FILE
.bail ON|OFF Stop after hitting an error. Default OFF
.databases List names and files of attached databases
.dump ?TABLE? ... Dump the database in an SQL text format
If TABLE specified, only dump tables matching
LIKE pattern TABLE.
.echo ON|OFF Turn command echo on or off
.exit Exit this program
.explain ?ON|OFF? Turn output mode suitable for EXPLAIN on or off.
With no args, it turns EXPLAIN on.
.header(s) ON|OFF Turn display of headers on or off
.help Show this message
.import FILE TABLE Import data from FILE into TABLE
.indices ?TABLE? Show names of all indices
If TABLE specified, only show indices for tables
matching LIKE pattern TABLE.
.load FILE ?ENTRY? Load an extension library
.log FILE|off Turn logging on or off. FILE can be stderr/stdout
.mode MODE ?TABLE? Set output mode where MODE is one of:
csv Comma-separated values
column Left-aligned columns. (See .width)
html HTML <table> code
insert SQL insert statements for TABLE
line One value per line
list Values delimited by .separator string
tabs Tab-separated values
tcl TCL list elements
.nullvalue STRING Print STRING in place of NULL values
.output FILENAME Send output to FILENAME
.output stdout Send output to the screen
.prompt MAIN CONTINUE Replace the standard prompts
.quit Exit this program
.read FILENAME Execute SQL in FILENAME
.restore ?DB? FILE Restore content of DB (default "main") from FILE
.schema ?TABLE? Show the CREATE statements
If TABLE specified, only show tables matching
LIKE pattern TABLE.
.separator STRING Change separator used by output mode and .import
.show Show the current values for various settings
.stats ON|OFF Turn stats on or off
.tables ?TABLE? List names of tables
If TABLE specified, only list tables matching
LIKE pattern TABLE.
.timeout MS Try opening locked tables for MS milliseconds
.width NUM1 NUM2 ... Set column widths for "column" mode
.timer ON|OFF Turn the CPU timer measurement on or off
sqlite>
Una vez dentro de la base de datos se pueden realizar consultas utilizando la sintaxis SQL estándar. Para que las consultas select muestren los encabezados de las tablas, se debe utilizar el comando .headers ON
Para salir se debe ejecutar .quit
Espero sea de gran utilidad!
Hits Recientes
- Cómo descomprimir archivos 7zip hace 5 minutos
- Cómo instalar uTorrent en GNU/Linux hace 5 minutos
- Lo más leído de mayo hace 6 minutos
- Buscar archivos por fecha de modificación hace 7 minutos
- Cómo agregar el repositorio EPEL en CentOS y configurar el plugin yum Priorities hace 11 minutos
- Cómo configurar Samba en Red Hat/CentOS hace 13 minutos
- Proteger con contraseña un directorio Web hace 17 minutos
- Time drift extremo en Windows XP virtualizado con KVM hace 17 minutos
- Habilitar efectos de escritorio en Centos 6.3 hace 19 minutos
- Crear y montar imágenes ISO hace 19 minutos
Anuncie aquí

Más Leído
- Instalación y configuración de OpenVPN (3733)
- Virtualización en CentOS 6.2 utilizando KVM (3686)
- "ps aux" explicado (2769)
- Instalar samba en CentOS 6.2 (2599)
- Por qué no utilizar 000webhost.com (2453)
- Cómo configurar el proxy en Ubuntu Server 12.04 (2391)
- Cómo configurar Samba en Red Hat/CentOS (2196)
- Utilizar SPICE en máquinas virtuales KVM (2091)
- Compiz-fusion en CentOS 6.3 (2088)
- Acceso remoto a máquinas virtuales KVM utilizando el cliente SPICE (1937)


