Bienvenidos a lo que oficialmente es mi primera publicación. La cual tratara de un pequeño “tutorial” para manejar bases de datos utilizando el gestor SQLite, el cual fue realizado como una actividad en una materia mi carrera (Ingeniería en Computación) .
Antes de comenzar debo mencionar que lo que veran aqui es muy basico, tratare de explicarlo con ejemplo utilizado en mi clase, veran cosas como: crear tablas, insertar datos, modificarlos y eliminarlos. Por lo que son cosas muy basicas.
Fuente
¿Qué es un gestor base datos?
A un gestor de base de datos, se le puede entender como un conjunto de herramientas o programas que permiten el almacenamiento, obtención y modificación de información en una base de datos.
Fuente: https://es.wikipedia.org/wiki/Sistema_de_gesti%C3%B3n_de_bases_de_datos
¿Qué es SQLite?
SQLite es un gestor de base de datos Gratuito y de código abierto que puede ser bien instalado o utilizado desde un ejecutable a través de un “Shell” de comandos, tiene semejanzas con Acces de Microsoft Windows, además es multiplataforma lo cual puede ser utilizado en Linux (Para esta actividad solo contaba con Windows por lo que el tutorial fue realice en este). SQLite cumple los estándares de SQL por lo que su sintaxis no es muy diferente si se conoce SQL o MySQL.
Instalación de SQLite (Windows)
SQLite a diferencia de MySQL y como ya mencione antes no requiere propiamente una instalación, puede descargarse ingresando a la página oficial
https://www.sqlite.org/ en la sección de “Descarga” o “Donwload”. Tambien podemos ingresar al siguiente enlace
https://www.sqlite.org/download.html y buscamos “Precompiled Binaries for Windows”, deberemos elegir entre varias versiones de nuestro sistema operativo, ya sea de 32 o 64 bits. Por ejemplo habrá una llamada “sqlite-dll-win32-x86-3220000.zip” con la que podemos descargar la versión de 32 bits.
Este archivo contendrá unos ejecutables que nos permitirá utilizar el “Shell” de comandos para así poder crear y manipular bases de datos con la extensión “*.db”
Manejo de comandos en SQLite
Una pequeña diferencia con MySQL es el manejo de comandos los cuales se utiliza un punto antes del comando, por ejemplo el comando de ayuda “.help”, al principio puede que sea confuso y de no colocar el punto tendríamos errores.
Para la sentencias que se usan en la base de datos como ya mencione antes, tiene similitud con sql, es decir incluyendo el “;” al final si no Sqlite nos dira igual que MySQL “…>” que quiere decir que falta cerrar esa sentencia.
Aquí les dejo un cuadro con los principales comandos de SQLite
Ahora pasaremos a realizar la primera base datos, para esto utilizaremos los comandos “Meta”, los cuales nos van a permitir manipular la base de datos. Estos se dividen en 3 grupos.
Data Definition Language: permiten utilizar métodos de almacenamiento para acceder a los datos desde el sistema de base de datos. Estos son: CREATE, ALTER y DROP
Data Manipulation Language: son los comandos que nos van a permitir manipular los datos, permitiéndonos añadir, modificar o eliminar datos, los comandos son: INSERT, UPDATE, DELETE.
Data Query Language: Permite el recuperar datos necesarios de la base de datos. Se utiliza el comando SELECT.
Creando una Base de datos simple.
Ahora comenzamos a crear nuestra base de datos, para esto abrimos el ejecutable “sqlite3” seguidamente se abrirá un “Shell” de comandos o consola de comandos la cual nos permitirá manejar nuestra base de datos.
Para crear nuestra base de datos utilizaremos el comando .open “elnombredelabasededatos.db” (Pueden colocar el nombre que deseen este es solo un ejemplo). De existir una base de datos con este nombre, en vez de crease se abrirá para poder trabajar en esta.
Hecho esto procederemos a cargar las tablas y las columnas mediante este comando “CREATE TABLE [nombre de la tabla] ( columna1, columna2, columna etc);” recordando colocar el “;” para cerrar el comando.
Si queremos crear datos de un estudiante crearemos la tabla “Alumnos”
sqlite> CREATE TABLE alumnos (
...> cedula int(10) primary key not null,
...> Apellido char(30) not null,
...> Nombre char(30) not null);
Aclaro unas cosas antes de continuar, la tabla “alumnos” contiene 3 campos, los cuales son “cedula” que es “int” es decir de tipo entero numérico y con una longitud de 10, por lo que solamente aceptara 10 caracteres números, el segundo ocambpo es el “Apellido” el cual es del tipo “char” y de longitud 30, y el tercer campo es el “Nombre” que al igual que el Apellido tendrá una longitud de 30.
El Campo “cedula” llevaría delante “primary key” la cual sería nuestro clave primaria, y para cerrar el comando utilizamos “;”, no debería dar ningún error, confirmamos utilizando el comando .schema “nombredetabla” y debería aparecer el comando que acabamos de introducir.
Para ver las tablas que contiene una base de datos podemos utilizar el comando “.tables”.
PD: Utilizo “cedula” como clave primaria puesto que en mi país (Venezuela) es el documento con el cual se identifica una persona jeje.
Para eliminar una tabla que este mal o que no nos guste se usa la sentencia drop “nombredetable”;.
Insertar Datos en la Tabla
Ahora procederemos a ingresar datos a una tabla ya creada, para hacerlo usamos la sentencia “insert into [Tabla] (campos) values ('valores')”. Podemos utilizar el ejemplo anterior de la siguiente forma:
“insert into alumnos(cedula,Apellido,Nombre) values (“123456‟,‟Rodriguez‟,‟Fernando‟);
Comprobamos los datos ingresados con “select * from” en la tabla “Alumnos”
Si cargamos más datos en la tabla, al momento de comprobar con el comando “select”, podemos cambiar el modo en el cual estos datos se muestran, por defecto SQLite los muestra de la siguiente manera:
“sqlite> select * from alumnos;
123456|Rodriguez|Fernando
245612|Esparanza|Silvina
321456|Aguilar|Jose”
Usando “.mode MODE [TABLE]” de esta manera:
“sqlite> .mode tabs Alumno”
“sqlite> select * from alumnos;
123456 Rodríguez Fernando
245612 Esparanza Silvina
321456 Aguilar Jose”
Modificar Datos de la tabla
Uno de los problemas a la hora de manejar bases de datos es que suele ser necesario realizar modificaciones. Para esto usamos la sentencia “UPDATE [tabla] SET columna=”dato nuevo” WHERE columna=”dato viejo”;
“sqlite> update alumnos set Nombre="Fernando" where Nombre="Jesús";”
Comprobamos que el dato este cambiado:
sqlite> select * from Alumnos;
123456 Rodríguez Jesús
245612 Esparanza Silvina
321456 Aguilar Jose”
Utilizando esa sentencia se reemplazó el nombre de la primera persona que aparece en la tabla “alumnos” el cual ahora en vez de ser “Fernando” es Jesús”
Eliminar Datos de la tabla
La eliminación de registros de la tabla se efectúa con la sentencia “Delete”, la cual al igual que todas hay que usar con algunas precauciones porque no hay vuelta atrás.
Una vez un Registro es eliminado, solo se puede volver a ingresar de forma manual, por ejemplo ingresaremos nuevamente datos a la tabla que luego se eliminaran:
“insert into alumnos(cedula,Apellido,Nombre) values (“987456‟,‟Perez‟,‟Juan‟);”
Y ahora procedemos a eliminarlo
"sqlite> delete from alumnos where cedula="987456";”
Se utiliza la “cedula” puesto que es la clave primaria de este “alumno” por lo tanto todos los datos asociados a este se eliminaran
Bueno Amigos, trate de explicarlo lo mejor que pude y de ser posible mas adelante publicare un video con el mismo ejemplo mostrado en este pequeño tutorial, esto no es mas si no el poco conocimiento que tengo y lo poco que he aprendido, espero haber compartido lo suficiente con ustedes :). Pueden obetener mas informacion del uso de sqlite en el siguiente link:
http://laradiomagica.orgfree.com/descargas/sqlite-introduccion.pdf Cualquier sugerencia, crítica u opinión es bien recibida. Gracias!
Bueno amigos me despido hasta otra ocasión...
@originalworks
Hola @enrix23df, upv0t3
Este es un servicio gratuito para nuevos usuarios de steemit, para apoyarlos y motivarlos a seguir generando contenido de valor para la comunidad.
<3 Este es un corazón, o un helado, tu eliges .
: )
N0. R4ND0M:
6881 8896 7301 9869
2710 8152 6630 6448
8759 3961 3764 4939
6004 6964 5243 2081
Congratulations @enrix23df! You received a personal award!
Click here to view your Board
Congratulations @enrix23df! You received a personal award!
You can view your badges on your Steem Board and compare to others on the Steem Ranking
Vote for @Steemitboard as a witness to get one more award and increased upvotes!