LINUX

Cómo instalar y usar SQLite básico en Linux

linux sqlite

En este artículo veremos cómo instalar SQLite (base de datos relacional) con su funcionamiento básico. Si le digo que SQLite probablemente se usa más que todos los demás motores de base de datos combinados. Sí, has oído bien. Es la base de datos más extendida del mundo, con millones y miles de millones de copias.

La razón detrás de esta popularidad es una características unicas que son inusuales y que lo hacen diferente de muchos otros motores de base de datos SQL como MySQL, PostgreSQL, Oracle, Microsoft SQL Server, etc. Comencemos con él. Primero lo instalaremos en Linux y luego cubriremos las operaciones básicas de la base de datos.

Instalación de Sqlite

Para instalar en su máquina basada en Debian (Ubuntu, Debian, etc.), ejecute los siguientes comandos.

$ sudo apt update
$ sudo apt install sqlite3

Para instalar en su máquina basada en RPM (RHEL, CentOS, Fedora, etc.), ejecute los siguientes comandos.

$ sudo yum update
$ sudo yum install sqlite

También puede instalar SQLlite usando el administrador de paquetes DNF:

sudo dnf update
sudo dnf install sqlite
To access SQLite databases from various programming languages (C, Tcl, Java), the language bindings need to be installed
sudo dnf install sqlite-devel sqlite-tcl sqlite-jdbc

Ahora abra una terminal y ejecute «sqlite3», verá las siguientes líneas de aviso.

$ sqlite3
SQLite version 3.8.2 2013-12-06 14:53:30
Enter ".help" for instructions
Enter SQL statements terminated with a ";"

La primera línea muestra la versión de sqlite3 y la fecha y hora de publicación.
La segunda línea dice que escriba «.help» para obtener instrucciones.

.Ayuda El comando enumera todos los metacomandos y sus descripciones. Estos metacomandos también se denominan comandos de «punto» porque están precedidos por un punto.
Ponga «.help» para solicitar

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      Use STRING in place of NULL values
.open ?FILENAME?       Close existing database and reopen FILENAME
.output FILENAME       Send output to FILENAME
.output stdout         Send output to the screen
.print STRING...       Print literal STRING
.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
.trace FILE|off        Output each SQL statement as it is run
.vfsname ?AUX?         Print the name of the VFS stack
.width NUM1 NUM2 ...   Set column widths for "column" mode
.timer ON|OFF          Turn the CPU timer measurement on or off

Antes de explicar estos comandos de puntos, veamos algunas operaciones básicas de la base de datos.

Primero ejecute el comando «.quit» para finalizar la sesión.

crear una base de datos

Ejecute el siguiente comando en el indicador de shell.

Esto creará el archivo de base de datos «example.db» (puede poner el nombre que desee en lugar de «example.db») (si no existe). Si existe, abra la base de datos contenida en el archivo.

$ sqlite3 example.db
SQLite version 3.8.2 2013-12-06 14:53:30
Enter ".help" for instructions
Enter SQL statements terminated with a ";"

La diferencia entre el comando «sqlite3» y «sqlite3 dbname.db» es que el primero creará una base de datos temporal para la sesión y expirará cuando se cierre la sesión.

Crear mesa

Vamos a crear una tabla de estudiantes con atributos:

reg_no int(4)
nombre varchar(20)
marca int(3)

ingrese los siguientes comandos en la terminal

sqlite> create table student (
   ...> reg_no int(4),
   ...> name   varchar(20),
   ...> marks  int(3)
   ...> );

Esto creará una tabla de estudiantes con los atributos anteriores.

Puede ver la lista de tablas en la base de datos seleccionada por .mesa dominio

sqlite> .table
student

En mi caso, solo hay un estudiante de la corriente principal.

También puede ver el esquema de la tabla usando .esquema nombre de la tabla

sqlite> .schema student
CREATE TABLE student (
reg_no int(4),
name   varchar(20),
marks  int(3)
);

Insertar datos

Insertemos 3 registros en la tabla
101, pradip, 87
102, Avinash, 86
103, Rakesh, 90

Ingrese el siguiente comando uno por uno

sqlite> insert into student (reg_no, name, marks) values (101, 'Pradip', 87);
> insert into student (reg_no, name, marks) values (102, 'Avinash', 86);
> insert into student (reg_no, name, marks) values (103, 'Rakesh', 91);

Recopilación de datos

Puede recuperar datos de la tabla con la declaración de selección

sqlite> select * from student;
101|Pradip|87
102|Avinash|86
103|Rakesh|91

Muestra el resultado en el modo predeterminado (lista).

Puede cambiar el modo con .módulo dominio

Ingrese la columna .mode para solicitar y luego realice una consulta de selección. Mostrará el resultado en formato de columna.

sqlite> .mode column
> select * from student;
reg_no      name        marks     
----------  ----------  ----------
101         Pradip      87        
102         Avinash     86        
103         Rakesh      91        

Delete, Alter, Drop, etc. tienen la misma sintaxis que sql.

Comandos especiales para sqlite3 (dot -commands)

Vi que los comandos «.help» enumeran todos los comandos con puntos. Comprendamos algunos otros comandos importantes.

1).bases de datos

Muestra el nombre de la base de datos seleccionada.

sqlite> .database
seq  name             file                                                      
---  ---------------  --------------------
0    main             /home/avi/example.db

Muestra las tablas en la base de datos seleccionada.

sqlite> .table
student

2) .mira

Muestra la configuración actual

sqlite> .show
     echo: off
  explain: off
  headers: off
     mode: list
nullvalue: ""
   output: stdout
separator: "|"
    stats: off
    width: 

3) .encabezado ENCENDIDO | APAGADO

Puede mostrar el nombre del atributo en el resultado de la consulta ejecutando el comando .header ON|OFF

sqlite> .header ON
> select * from student;
reg_no      name        marks     
----------  ----------  ----------
101         Pradip      87        
102         Avinash     86        
103         Rakesh      91        

4).módulo

El programa puede mostrar los resultados de una consulta en ocho formatos diferentes: «csv», «columna», «html», «insertar», «línea», «lista», «pestañas», «tcl»..modo El comando se utiliza para cambiar entre estos formatos de salida.

sqlite> .mode csv
> select * from student;
reg_no,name,marks
101,Pradip,87
102,Avinash,86
103,Rakesh,91

Puedes usar .separador orden de cambio de separador.

sqlite> .separador –
> seleccione * del estudiante;
reg_sin-nombre-marcas
101-Pradip-87
102-Avinash-86
103-Rakesh-91

Escribir los resultados en un archivo

de forma predeterminada, envía los resultados de la consulta a la salida estándar.
puede cambiar esto usando los comandos «.output» y «.once».

Simplemente coloque el nombre de un archivo de salida como argumento para .output y todos los resultados de la consulta posterior se escribirán en ese archivo.

sqlite> .output ex.txt

O usar .una vez nombre de archivo si desea que se redirija el resultado de la siguiente consulta.

Instalé con éxito SQLite en Linux con operaciones básicas. Estas operaciones son solo algunas de ellas. todo valido. No podemos cubrirlos todos en este artículo. Si encuentra alguna dificultad en una instalación o algún comando, hágamelo saber en la sección de comentarios.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar