En el concepto anterior instalamos la herramienta sqlite3.exe que nos permite administrar bases de datos SQLite desde la línea de comandos:
Una vez que se inicia la aplicación podemos crear nuestra primer base de datos mediante el comando ".open [nombre de la base de datos]":
Como dicho nombre de base de datos no existe, podemos ver que en la misma carpeta donde se encuentra "sqlite3.exe" se crea el archivo "base1.db".
La siguiente vez que ingresemos a "sqlite3.exe" y ejecutemos el comando ".open base1.db" se abrirá la base de datos creada anteriormente.
El nombre del archivo de la base de datos puede ser cualquiera que permita el sistema operativo donde se ejecuta.
Crearemos la tabla articulos desde la línea de comandos:
Normalmente hay muchos comandos SQL que requieren la escritura de varias líneas como el 'create table', en estos casos cada vez que presionamos la tecla 'Enter' se continúa con el mismo comando SQL hasta ingresar un punto y coma. El programa "sqlite3.exe" interpreta el punto y coma como la finalización del comando.
Insertamos dos filas en la tabla articulos:
Ejecutamos ahora el comando SQL select para recuperar todas las filas:
Cerremos ahora la ventana del "sqlite3.exe" y lo volvamos a ejecutar, tratemos de imprimir nuevamente la tabla "articulos":
Se muestra un error porque no hemos abierto la base de datos "base1.db". Abramos la base de datos "base1.db" y procedemos nuevamente a ejecutar el comando 'select':
Ingresar al CLI de SQLite y abrir la base de datos "base1.db".
Crear las tablas con las siguientes estructuras:
create table generos( codigo integer primary key, descripcion text ); create table peliculas ( codigo integer primary key, titulo text, actor text, duracion integer, genero integer );
Insertar las siguientes filas en las tablas:
insert into generos(descripcion) values ('Aventura'); insert into generos(descripcion) values ('Romance'); insert into generos(descripcion) values ('Acción'); insert into peliculas (titulo,actor,duracion,genero) values('Mision imposible','Tom Cruise',120, 3); insert into peliculas (titulo,actor,duracion,genero) values('Harry Potter y la piedra filosofal','Daniel R.',180, 1); insert into peliculas (titulo,actor,duracion,genero) values('Harry Potter y la camara secreta','Daniel R.',190, 1); insert into peliculas (titulo,actor,duracion,genero) values('Mision imposible 2','Tom Cruise',120, 3); insert into peliculas (titulo,actor,duracion,genero) values('Mujer bonita','Richard Gere',120, 2); insert into peliculas (titulo,actor,duracion,genero) values('Elsa y Fred','China Zorrilla',110, 2);
Imprimir todos los datos de las películas inclusive su género.
drop table if exists generos; drop table if exists peliculas; create table generos( codigo integer primary key, descripcion text ); create table peliculas ( codigo integer primary key, titulo text, actor text, duracion integer, genero integer ); insert into generos(descripcion) values ('Aventura'); insert into generos(descripcion) values ('Romance'); insert into generos(descripcion) values ('Acción'); insert into peliculas (titulo,actor,duracion,genero) values('Mision imposible','Tom Cruise',120, 3); insert into peliculas (titulo,actor,duracion,genero) values('Harry Potter y la piedra filosofal','Daniel R.',180, 1); insert into peliculas (titulo,actor,duracion,genero) values('Harry Potter y la camara secreta','Daniel R.',190, 1); insert into peliculas (titulo,actor,duracion,genero) values('Mision imposible 2','Tom Cruise',120, 3); insert into peliculas (titulo,actor,duracion,genero) values('Mujer bonita','Richard Gere',120, 2); insert into peliculas (titulo,actor,duracion,genero) values('Elsa y Fred','China Zorrilla',110, 2); select titulo, actor, duracion, descripcion from peliculas as p inner join generos as g on g.codigo=p.genero;