0% encontró este documento útil (0 votos)
33 vistas52 páginas

Presentación - Introducción A Bases de Datos

Este documento presenta una introducción a las bases de datos. Explica que las bases de datos permiten almacenar y recuperar grandes cantidades de datos de forma sencilla. Aprenderemos a crear bases de datos, guardar datos en ellas y recuperarlos usando el lenguaje SQL. El objetivo es aprender a consultar, insertar, modificar y eliminar datos de tablas, y también crear, modificar y eliminar tablas.

Cargado por

contacto
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
33 vistas52 páginas

Presentación - Introducción A Bases de Datos

Este documento presenta una introducción a las bases de datos. Explica que las bases de datos permiten almacenar y recuperar grandes cantidades de datos de forma sencilla. Aprenderemos a crear bases de datos, guardar datos en ellas y recuperarlos usando el lenguaje SQL. El objetivo es aprender a consultar, insertar, modificar y eliminar datos de tablas, y también crear, modificar y eliminar tablas.

Cargado por

contacto
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 52

Introducción a Bases de

datos
Primeros pasos
Activen las cámaras los que puedan y
pasemos asistencia
Inicio Desarrollo Cierre

● Objetivo de la ● Conceptualización ● Reflexión


sesión ● Ejercitación
Inicio
Introducción a bases de datos
¿Por qué necesitamos bases de datos?

Cuando creamos aplicaciones web vamos a necesitar guardar información de forma permanente (o
por un largo periodo de tiempo). Las bases de datos nos permiten guardar millones de registros y
recuperar los que necesitamos de forma sencilla.

En esta unidad aprenderemos a crear una base de datos, guardar datos en ella y recuperarlos, todo
esto utilizando un lenguaje llamado SQL.

Conociendo esto podremos crear aplicaciones que guarden datos o utilicen datos ya guardados.
/* Consultar datos de una tabla filtrando por columna o por condición,
ordenando los resultados y limitando la cantidad de respuestas */

/* Insertar, modificar y eliminar datos de una tabla */

/* Crear, modificar y borrar tablas */ Objetivos


PostgreSQL Un navegador

En este curso ocuparemos el motor de base de Para esta clase utilizaremos sqliteonline por lo que
datos postgreSQL. En la primera clase ocuparemos necesitaremos un navegador. Se recomienda firefox,
una versión online. Luego tendremos que instalarlo pero se puede utilizar otros.
Desarrollo
Introducción a bases de datos
Conceptos básicos

● Existen distintos tipos de motores de bases de datos, en este curso trabajaremos con el motor
postgreSQL el cual es uno de los más utilizados en el mundo y pertenece al tipo de motor
conocido como bases de datos relacionales, aunque tiene soporte para datos no relacionales.

● Por ahora solo tenemos que saber que trabajaremos con bases de datos relacionales.

● En los sistemas de bases de datos relacionales los datos se organizan en tablas.


Introducción a bases de datos
Conceptos básicos
Una base de datos relacional es, a
cierto modo, similar a un archivo
excel.
Tenemos múltiples tablas que
guardan información, cada fila de la
tabla es un registro.
Por ejemplo, en esta tabla cada
registro representa una persona
Cada columna guarda un atributo o
campo (field) del registro. Y lo que
guarda en ese campo es un valor
(value)
Introducción a bases de datos
Conceptos básicos

En un motor de base de
datos podemos tener
múltiples bases, dentro cada
una de estas podemos tener
diversas tablas y en cada
tabla pueden haber
diferentes registros
Introducción a bases de datos
Conceptos básicos

SQL es un lenguaje que nos permite


hacer consultas a una base de datos
como las siguientes:

● “Selecciona todos los registros


de la ciudad Odessa”
● “Selecciona todos los registros
con id mayor a 100”

El lenguaje SQL también nos permite


crear y modificar tablas, pero
también insertar, modificar y borrar
registros en una tabla.
Introducción a bases de datos
Nuestra primera consulta

Ingresa a sqliteonline.com

● Selecciona PostgreSQL
● Escribe Select * from Demo;
● Presiona el botón RUN
● Observemos el resultado
Introducción a bases de datos
- Analizando nuestra primera consulta.
SELECT * FROM demo;

SELECT Indica que la consulta a realizar será de selección

* Comodín para indicar que se deben seleccionar todos los campos, o sea todas
las columnas de la tabla

FROM Indica de qué tabla específica se va a seleccionar

demo Nombre de la tabla. En este caso esta viene precargada en sqliteonline

; Una consulta termina con un punto y coma, de esta forma podemos separar
varias instrucciones.
Introducción a bases de datos
Insensibilidad a las mayúsculas

SELECT * FROM demo;


Es lo mismo que:
select * from demo;
Consulta básica
SELECT *
FROM tabla;

c1 c2 c3 c4 c1 c2 c3 c4
98 23 ‘a’ True
98 23 ‘a’ True
45 45 ‘b’ False 45 45 ‘b’ False
34 76 ‘c’ True
34 76 ‘c’ True
87 34 ‘d’ None
87 34 ‘d’ None
82 56 ‘e’ True
82 56 ‘e’ True
90 10 ‘f’ False 90 10 ‘f’ False

Notar que el resultado de una consulta a una tabla es otra


tabla !!
Consulta especificando el campo
SELECT c1,c3
FROM tabla;

c1 c2 c3 c4
c1 c3
98 23 ‘a’ True
98 ‘a’
45 45 ‘b’ False
45 ‘b’
34 76 ‘c’ True
34 ‘c’
87 34 ‘d’ None
Para especificar 87 ‘d’
82 56 ‘e’ True múltiples campos
82 ‘e’
separamos los nombres
90 10 ‘f’ False de los campos con coma 90 ‘f’
(,) en lugar de utilizar
asterisco (*)
Ejercicio

Utilizando la tabla demo de sqliteonline, realiza lo siguiente: Ejercicio


1. Selecciona solo los nombres ¡Manos al teclado!
2. Selecciona el id y los nombres
Consulta con condición
SELECT *
FROM tabla
where c4 =
True;

c1 c2 c3 c4
c1 c2 c3 c4
98 23 ‘a’ True 98 23 ‘a’ True
45 45 ‘b’ False
34 76 ‘c’ True
34 76 ‘c’ True 82 56 ‘e’ True
87 34 ‘d’ None

82 56 ‘e’ True

90 10 ‘f’ False
Ejercicio

Ejercicio
¡Manos al teclado!
Utilizando la tabla demo de sqliteonline, realiza lo siguiente

1. Selecciona todos los ids mayores a 4


Consulta especificando límites
SELECT *
FROM tabla
LIMIT 2;

c1 c2 c3 c4
c1 c2 c3 c4
98 23 ‘a’ True 98 23 ‘a’ True
45 45 ‘b’ False
45 45 ‘b’ False
34 76 ‘c’ True

87 34 ‘d’ None

82 56 ‘e’ True

90 10 ‘f’ False
Ejercicio

Ejercicio
¡Manos al teclado!
Utilizando la tabla demo de sqliteonline:

1. Selecciona el id y los hints, y limita los resultados a 3


Consulta con resultados ordenados

SELECT * FROM
tabla
ORDER BY c1 DESC;

c1 c2 c3 c4 c1 c2 c3 c4

98 23 ‘a’ True 98 23 ‘a’ True


Con ASC
45 45 ‘b’ False 90 10 ‘f’ False
ordenamos por la
34 76 ‘c’ True columna en orden 87 34 ‘d’ None
creciente, con DESC
87 34 ‘d’ None en orden 82 56 ‘e’ True
decreciente
82 56 ‘e’ True 45 45 ‘b’ False

90 10 ‘f’ False 34 76 ‘c’ True


Ejercicio

Ejercicio
¡Manos al teclado!
Utilizando la tabla demo de sqliteonline

1. Selecciona todos los registros ordenados alfabéticamente


por nombre (al ordenar por una columna de tipo string se
entenderá que el orden es alfabético)

2. Selecciona los primeros 3 registros ordenados por id


(ordena y luego limita)
/* Consultar datos de una tabla filtrando por columna o
por condición, ordenando los resultados y limitando la
cantidad de respuestas */

/* Insertar, modificar y eliminar datos de una tabla */


Objetivos
/* Crear, modificar y borrar tablas */
/* Insertando datos*/
Insertando datos
Nuestra primera inserción.

INSERT INTO demo (NAME, HINT) VALUES ('Gonzalo', 'Pista 1');

INSERT Indica que vamos a insertar un dato

INTO Indica en qué tabla vamos a insertar

(name, hint) Los nombres de las columnas donde se insertarán datos

VALUES Indica que a continuación vamos a insertar valores

('Gonzalo', 'Pista 1'); Los valores que estamos insertando, están en el mismo orden que las
columnas, es decir, Gonzalo corresponde a name y 'pista 1' a Hint.
Insertar datos
Hay dos forma de insertar datos

1. La primera forma, es ingresando valores asociados a todas las columnas.

INSERT INTO tabla( Suponiendo que la


VALUES (1, 2) tabla solo tiene 2
); columnas

2. La segunda, es ingresando valores asociados a ciertas columnas

INSERT INTO tabla


(columna2) VALUES
(1, 2);
Insertar datos
Otras reglas importantes

● Los strings se ingresan con comillas simples en postgreSQL, utilizar comillas


dobles nos mostrará error.

INSERT INTO tabla( Suponiendo que la


VALUES ('Valor 1', Valor 2') tabla solo tiene 2
);
columnas

● Más adelante revisaremos los tipos de datos que podemos ingresar


Insertar datos
Insertando solo algunas columnas

● Cuando insertamos los datos


INSERT INTO tabla indicando las columnas, el resto de
(columna2) VALUES
(1, 2); los campos para ese registro queda
nulo (NULL), excepto en algunos
casos como nuestra tabla demo.

En la tabla demo hay una columna de tipo Serial, estas son bien frecuentes y
tienen valor autoincremental, o sea que se incrementa solo.
Ejercicio guiado

1. Insertemos 2 registros nuevos en la tabla demo Demostración


especificando las columnas name y hint, y
asignemos valores.

2. Mostremos todos los registros

3. Insertemos un nuevo registro en la tabla demo,


solo con la columna name

4. Mostremos todos los registros

5. Mostremos todos los registros filtrando (con


where) aquellos que en la la columna hint tienen el
valor 1
Insertar datos
Nulo no es lo mismo que vacío

Vacío, 0 o false
dependiendo
Nulo
del tipo de
columna
Ejercicio

Utilizando la tabla demo de sqliteonline Ejercicio


1. Inserta tu nombre y una pista ¡Manos al teclado!
2. Inserta el nombre de un compañero y otra pista. (La
pista es cualquier frase que quieras ingresar)

3. Selecciona los últimos dos registros (ordena por id


decreciente y limita 2 resultados)
Actualizando un registro

UPDATE tabla SET


columna1=1
WHERE condicion;

Cuando actualizamos datos tenemos


UPDATE demo SET que agregar a la cláusula el WHERE,
hint ='cambiado' de forma contraria, podríamos afectar
WHERE id = 1; todos los otros registros por error
Ejercicio

Ejercicio
Utilizando la tabla demo de sqliteonline ¡Manos al teclado!
1. Selecciona el registro que tiene tu nombre y cambia el
valor de hint por "Aprendí a cambiar valores de una
tabla" (recuerda, where)

2. Selecciona todos los ids menores que 5 y cambia el


valor en la columna hint por "Cambio masivo"
Eliminación de registros

DELETE FROM tabla


WHERE columna=
condicion;

La eliminación es muy similar a la modificación, y al igual que en esta, debemos


recordar utilizar la cláusula where para evitar borrar todos los registros.
Ejercicio

Ejercicio
Utilizando la tabla demo de sqliteonline
¡Manos al teclado!
1. Utiliza lo aprendido para borrar los primeros dos
registros (aquellos con id 1 y 2)
/* Consultar datos de una tabla filtrando por columna o
por condición, ordenando los resultados y limitando la
cantidad de respuestas */

/* Insertar, modificar y eliminar datos de una tabla */


Objetivos
/* Crear, modificar y borrar tablas */
Más allá de las operaciones en una tabla

Motor de Base de Datos Bases de Datos Tablas


Introducción a bases de datos
Tablas

Dentro de un motor de base de datos, pueden haber múltiples bases y dentro de estas pueden
haber diversas tablas. Ahora aprenderemos a crear una tabla nueva.

Una tabla se compone de varias columnas, cada una con un nombre y un tipo de dato. Por
ejemplo, podemos ver en sqliteonline, en la tabla demo, que las columnas especifican un tipo de
dato junto al nombre.
Introducción a bases de datos
Tablas y tipos de datos

INT/SMALLINT/BIGINT

Tipos numéricos FLOAT/DOUBLE

Tipos de caracteres
(caracteres, texto) CHAR/VARCHAR

Tipos temporales (fechas) DATE/TIME/TIMESTAMP

Tipos booleanos BOOLEAN

Varios más (arrays, json, Estos últimos no los


uuid, etc) cubriremos en este curso
Introducción a bases de datos
Creando una tabla nueva

CREATE TABLE tabla(


columna1 tipo_de_dato,
columna2 tipo_de_dato
);
Introducción a bases de datos
Creando una tabla nueva

Probemos dentro de
sqliteonline el siguiente
código:
CREATE TABLE alumnos(
nombre varchar,
nota1 integer,
nota2 integer,
nota3 integer
);

Obtendremos:
Introducción a bases de datos
Insertando datos en nuestra tabla

insert into alumnos (Nombre, Nota1, Nota2, Nota3) values ('Elmira', 10, 1, 6);
insert into alumnos (Nombre, Nota1, Nota2, Nota3) values ('Izak', 1, 6, 5);
insert into alumnos (Nombre, Nota1, Nota2, Nota3) values ('Claudette', 5, 1, 3);
insert into alumnos (Nombre, Nota1, Nota2, Nota3) values ('Noreen', 1, 6, 4);
insert into alumnos (Nombre, Nota1, Nota2, Nota3) values ('Natalina', 8, 5, 3);
insert into alumnos (Nombre, Nota1, Nota2, Nota3) values ('Jacky', 5, 2, 6);
insert into alumnos (Nombre, Nota1, Nota2, Nota3) values ('Jilly', 6, 1, 2);
insert into alumnos (Nombre, Nota1, Nota2, Nota3) values ('Robbie', 4, 8, 5);

Seleccionamos los datos para probar.

SELECT nombre * FROM alumnos


Introducción a bases de datos
Borrando una tabla

Probemos dentro de
sqliteonline el siguiente
código:
Drop TABLE alumnos;

Cuidado, que no hay vuelta atrás.


Aunque podemos volver a crearla.
Ejercicio

Utilizando la tabla demo de sqliteonline


Ejercicio
¡Manos al teclado!
1. Borra la tabla alumnos

2. Crea la tabla alumnos con las 3 notas

3. Ingresa los datos nuevamente

4. Ingresa, al final de la tabla, un registro con tu nombre y


tus notas
Introducción a bases de datos
Modificando una tabla

Al modificar una tabla podemos


agregar, borrar y cambiar el tipo
de dato de una columna, entre
otras acciones.

ALTER TABLE alumnos drop column Al agregar columnas


nota3; tenemos que especificar el
tipo de dato.
ALTER TABLE alumnos add column
nota3 integer;
/* Consultar datos de una tabla filtrando por columna o
por condición, ordenando los resultados y limitando la
cantidad de respuestas */

/* Insertar, modificar y eliminar datos de una tabla */


Objetivos
/* Crear, modificar y borrar tablas */
Cierre
¿Existe algún concepto que no
hayas comprendido? Reflexionemos
● Revisar la guía que trabajarán de forma
autónoma.
○ La guía contiene una actividad acompañada
de mapas conceptuales con todos los
comandos que necesitamos ocupar.
¿Qué sigue?
○ Estas instrucciones las ocuparemos
frecuentemente por lo que tenemos que
practicarlas.
● Revisar en conjunto el desafío.
www.desafiolatam.com

/DesafioLatam /DesafioLatam /DesafioLatam /DesafioLatam 52

También podría gustarte