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

Modulo 2unidad 3

Vincular bd mas amplia con js en base react
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 vistas31 páginas

Modulo 2unidad 3

Vincular bd mas amplia con js en base react
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

Experto Universitario en

Programación web Full


Stack
Módulo 2:

Introducción Node y Base de


datos
Unidad 3:

Introducción a las bases de datos/SQL


Presentación

En esta unidad comenzaremos a trabajar con el motor de bases de datos


relacionales MYSQL y utilizaremos el lenguaje SQL, que nos será de utilidad para
realizar consultas, escribir o eliminar datos.
Objetivos
Que los participantes logren…

● Comprender qué son las bases de datos.

● Entender y utilizar tablas, columnas y registros.

● Conocer y utilizar los tipos de datos.

● Hacer consultas a la base de datos.

● Escribir, modificar y eliminar registros de nuestra base de datos


Bloques temáticos
1. ¿Qué son las bases de datos?
2. Tablas.
3. Columnas.
4. Registros.
5. Tipos de datos.
6. Relaciones.
7. ¿Qué es el lenguaje SQL?
8. Consultas
9. Agregar, Modificar o Eliminar registros
1. ¿Qué son las bases de datos?

Una base de datos es un conjunto de datos pertenecientes a un mismo contexto y


almacenados sistemáticamente. Se pueden clasificar según la variabilidad de los
datos almacenados:

● Bases de datos estáticas: son bases de datos de sólo lectura, utilizadas


primordialmente para almacenar datos históricos
● Bases de datos dinámicas: son bases de datos donde la información
almacenada se modifica con el tiempo, permite operaciones como
actualización, adición , consulta y eliminación de datos.

Bases de datos relacionales


Éste es el modelo más utilizado en la actualidad para modelar problemas reales y
administrar datos dinámicamente.

En este modelo, el lugar y la forma en que se almacenan los datos no tienen


relevancia (a diferencia de otros modelos como el jerárquico y el de red).

Esto tiene la considerable ventaja de que es más fácil de entender y de utilizar para
un usuario esporádico de la base de datos.

Características

● Una base de datos relacional se compone de varias tablas o relaciones.


● No pueden existir dos tablas con el mismo nombre.
● Cada tabla es a su vez un conjunto de registros o filas .
● Cada registro representa un objeto del mundo real.
● No pueden existir dos campos o columnas con el mismo nombre en la
misma tabla.
● Los valores almacenados en una columna deben ser del mismo tipo de dato.
● Todas las filas de una misma tabla poseen el mismo número de campos.
● No se considera el orden en que se almacenan los registros en las tablas.
● No se considera el orden en que se almacenan las tablas en la base de datos.
● La información puede ser recuperada o almacenada mediante "consultas"
que ofrecen una amplia flexibilidad y poder para administrar la información.
2. Tablas

Tabla en las bases de datos, se refiere al tipo de modelado de datos donde se


guardan los datos recogidos por un programa. Su estructura general se asemeja a la
vista general de un programa de tablas

Las tablas se componen de dos estructuras:

● Campo o columnas: Corresponde al nombre de la columna. Debe ser único y


además tener un tipo de dato asociado.
● Registro: Corresponde a cada fila que compone la tabla. Allí se componen los
datos y los registros. Eventualmente pueden ser nulos en su
almacenamientos. Son las casillas horizontales dentro de una tabla
3. Columnas

En el contexto de una tabla de base de datos relacional, una columna, campo o


atributo es cada uno de los valores únicos (datos) que proporcionan la estructura
según la cual se descomponen las filas (registros o tuplas) de una tabla.
Los datos de cada campo pueden ser de diferentes tipos, pero solo uno por
columna: numéricos, alfanuméricos, lógicos (verdadero o falso), de texto,
multimedia, binarios, etc.
Para evitar la inconsistencia de una estructura de campos, al diseñarla, se deben
seguir las formas normales, sobre todo en bases de datos de gran tamaño.

Tabla: alumnos

id nombre apellido edad mail celular

numérico alfanumérico alfanumérico numérico alfanumérico alfanumérico


4. Registros

Un registro (también llamado fila) representa un objeto único de datos


implícitamente estructurados en una tabla. En términos simples, una tabla de una
base de datos puede imaginarse formada de filas y columnas (campos o atributos).

Cada fila de una tabla representa un conjunto de datos relacionados, y todas las
filas de la misma tabla tienen la misma estructura. No puede haber un registro
duplicado, los datos deben ser diferentes en al menos uno de los campos.
5. Tipos de datos

Una de las características principales de los campos, además de su nombre, es el


tipo de dato que va a guardar. Esto define los posibles valores que se permitirán
almacenar, la forma de guardarlos y hasta el espacio requerido para cada columna.

Tipos de datos con formato string

char: Son textos cuya longitud siempre será fija. Si un campo nombre es de
longitud 50 y por ejemplo guardamos Flavia (6 caracteres) , los otros 44 no se
ocupan.

varchar: Son textos cuya longitud es variable. Siguiendo el ejemplo anterior, si


guardamos el nombre Flavia (6 caracteres) , los otros 44 no se desperdiciaron.

text: Este tipo de dato permite guardar textos muy extensos, hasta 2gb, son
capaces de contener hasta un libro completo.

Tipos de datos numéricos

int (integer): Solo permiten valores positivos o negativos sin punto decimal.

decimal (numeric): Guarda valores con decimales.

float: número de coma flotante, este tipo de datos se suele utilizar para los valores
en notación científica.
Fechas

date: Válido para almacenar una fecha con año, mes y día, su rango oscila entre
‘1000-01-01’ y ‘9999-12-31’.

datetime: Almacena una fecha (año-mes-día) y una hora (horas-


minutos-segundos), su rango oscila entre ‘1000-01-01 [Link]’ y ‘9999-12-31
[Link]’.
6. Relaciones

Claves Primarias
Son campos llave que identifican unívocamente registros que están dentro de la
tabla. Sólo puede existir una clave primaria por tabla y ningún campo de dicha clave
puede contener valores NULL.

Claves Foráneas
Son campos llave que permiten referenciar unívocamente a un registro que está
dentro de otra tabla. Es una referencia a una clave en otra tabla. Necesitan no ser
claves únicas.

Ejemplo

nombre apellido dirección teléfono

Pablo Martinez Rivadavia 2564 4567-9852

Diego Luca Cuba 1234 4785-2369

Alfredo Gomez Medrano 200 4712-9865

Silvia Conte Corrientes 1452 2358-8965

Adelina Romero Belgrano 5698 4589-5623

Pablo Martinez San Pedrito 111 4578-4253

Diego Lopez Gascón 1239 4158-7423

Jorge Darío Gassi Uruguay 1478 4896-3265

Nicolás Molda Cucha cucha 1258 4289-6547


Si alguien nos preguntara si tenemos el teléfono del cliente Pablo Martínez, por qué
ocurrió un problema en la entrega de un producto en su domicilio y hay que
contactarse con él, le preguntaremos a la base de datos:

- ¿Cuál es el teléfono del cliente con nombre Pablo y apellido Martínez?

La respuesta sería una tabla con los siguientes datos:

nombre apellido dirección teléfono

Pablo Martinez Rivadavia 2564 4567-9852

Pablo Martinez San Pedrito 111 4578-4253

La respuesta que nos devolvió la BD es totalmente válida, los dos registros cumplen
con la condición que le pedimos: el cliente Pablo Martínez. Para arreglar esto,
tendríamos que preguntar cuál es la dirección del Pablo Martínez del que se
necesita el teléfono y volver a generar la consulta, especificando un poco más:

- ¿Cuál es el teléfono del cliente con nombre Pablo, apellido Martínez y dirección
Rivadavia 2564?

Ahora la respuesta sería una tabla con los siguientes datos:

nombre apellido dirección teléfono

Pablo Martinez Rivadavia 2564 4567-9852


Logramos conseguir sólo el dato que nos hacía falta, pero tuvimos que usar muchas
condiciones para lograr que la BD nos devolviera un registro único.

Para evitar este tipo de situaciones se usan los campos Llave o clave : son campos
(columnas) cuyo contenido va a ser único a lo largo de toda la tabla.

A fin de evitar que los valores que se vayan a almacenar en este tipo de campo se
dupliquen, por lo general se usan campos numéricos que la base de datos maneja
cuidándose siempre de asignar un número no usado anteriormente. Un claro
ejemplo de esto en la vida real es el DNI, el número de la tarjeta de crédito, las
cuentas bancarias, etc.

¿Cómo aplicamos esto a nuestra tabla de clientes? Lo que podemos hacer es


agregar un campo llave denominado “nro cliente” que represente un Número Único
de Cliente, el cual utilizaremos para referirnos unívocamente a cada uno de ellos.

Entonces la tabla quedaría así:

Tabla: PEDIDOS

nro_cliente nombre apellido dirección teléfono

1 Pablo Martinez Rivadavia 2564 4567-9852

2 Diego Luca Cuba 1234 4785-2369

3 Alfredo Gomez Medrano 200 4712-9865

4 Silvia Conte Corrientes 1452 2358-8965

5 Adelina Romero Belgrano 5698 4589-5623

6 Pablo Martinez San Pedrito 111 4578-4253

7 Diego Lopez Gascón 1239 4158-7423


8 Jorge Darío Gassi Uruguay 1478 4896-3265

9 Nicolás Molda Cucha cucha 1258 4289-6547

En las Bases de Datos Relacionales, como su nombre lo indica, las relaciones entre
las diversas tablas que la componen tienen un rol importante. Para indicar estas
relaciones de una tabla a la otra, se utilizan los campos llave.

Tabla: Ordenes

nro_pedido nro_cliente descripción importe

1 5 10 Resmas A4 3000

2 1 100 lapiceras 1000

3 6 22 Cuadernos Oficio 2420

Si analizamos la estructura de esta tabla, nos encontramos con dos campos llave:
nro pedido y nro cliente.
Con “nro pedido” lo que logramos es identificar unívocamente al pedido realizado, y
con “nro cliente”, podemos ubicar al cliente que realizó la compra.

Si queremos saber quién compró “100 Resmas A4”, sólo hace falta ver el Número de
Cliente que está en la columna “nro cliente” y luego ir a la tabla Clientes para ver a
quien le corresponde ese número, que en este caso es “Adelina Caraibo”.
7. ¿Qué es el lenguaje SQL?

El lenguaje de consulta estructurado o SQL (por sus siglas en inglés Structured


Query Language) es un lenguaje declarativo de acceso a bases de datos
relacionales que permite especificar diversos tipos de operaciones en ellas.

El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y


potencia de los sistemas relacionales y permite así gran variedad de operaciones.

Características generales de SQL


Es un lenguaje declarativo de "alto nivel" o "de no procedimiento" que, gracias a su
fuerte base teórica y su orientación al manejo de conjuntos de registros —y no a
registros individuales— permite una alta productividad en codificación y la
orientación a objetos. De esta forma, una sola sentencia puede equivaler a uno o
más programas que se utilizarían en un lenguaje de bajo nivel orientado a registros.
SQL también tiene las siguientes características:

● Lenguaje de definición de datos: El LDD de SQL proporciona comandos para


la definición de esquemas de relación, borrado de relaciones y
modificaciones de los esquemas de relación.
● Lenguaje interactivo de manipulación de datos: El LMD de SQL incluye
lenguajes de consultas basado tanto en álgebra relacional como en cálculo
relacional de tuplas.
● SQL incorporado y dinámico: Esto quiere decir que se pueden incorporar
instrucciones de SQL en lenguajes de programación como: C++, C, Java, PHP,
COBOL, Pascal y Fortran.
● Autorización: El LDD incluye comandos para especificar los derechos de
acceso a las relaciones y a las vistas.
Tipos de datos

● Varchar: Recibe cadena de palabras compuestas de letras, números y


caracteres especiales.
● Int es el principal tipo de datos de valores enteros de SQL Server. Con
números enteros con o sin signo
● Date: una fecha de calendario que contiene el año (de cuatro cifras), el mes y
el día.
● Time: La hora del día en horas minutos segundos (el valor predeterminado es
0).
8. Consultas

Es el lenguaje de consulta universal para bases de datos.

Los mandatos de SQL se dividen en tres grandes grupos diferenciados.

● DDL (Data Definition Language): es el encargado de la definición de Bases


de Datos, tablas, vistas e índices entre otros.
● DML (Data Manipulation Language): cuya misión es la manipulación de
datos. A través de él podemos seleccionar, y actualizar insertar, eliminar datos.
● DCL (Data Control Language): encargado de la seguridad de la base de
datos, en todo lo referente al control de accesos y privilegios entre los
usuarios.

Lenguaje de definición de datos de mysql

Para crear una base de datos es la consulta es la siguiente: CREATE DATABASE, se


puede escribir en mayúscula o minúscula.

Para crear una tabla:


En primer momento colocamos el nombre de la tabla en este caso alumnos y entre
paréntesis se debe especificar el nombre y el tipo de dato de cada columna de la
tabla.

Para seleccionar datos de una tabla y devolver un resultado, que es una matriz de
datos (filas y columnas).

Para seleccionar los datos de todas las columnas de una tabla, se usa un asterisco
en lugar de los nombres de las columnas:

Para seleccionar datos de las tablas en donde sólo queramos recuperar registros en
donde una columna tenga un valor en particular, usamos la cláusula WHERE.
Si se quisiera recuperar registros que cumplan con más de una condición, se utiliza
AND u OR entre las condiciones del WHERE:

Ejemplos:

Nombre Apellido

Laura Gomez

Victoria Sanchez
Sueldo

20000

Operadores que se pueden usarse con WHERE:

Operador Descripción

= Igual a

<> Diferente de

> Mayor que

< Menor que

>= Mayor que o igual a

>= Menor que o igual a

BETWEEN Entre cierto rango

LIKE Busca cierto patrón de caracteres en los datos. Al patrón buscado


se lo precede o sucede con “%” según se desee:
LIKE ‘%ma%’: Busca campos que contengan la sílaba “ma”.
LIKE ‘%ma’: Busca campos que terminen con la sílaba “ma”.
LIKE ‘ma%’: Busca campos que empiecen con la sílaba “ma”.

Consultas auxiliares

ORDER BY

Para lograr un ordenamiento específico de la respuesta podemos utilizar la palabra


clave “ORDER BY”

Para dar dos ordenamientos sucesivos (por edad y por apellido, por ejemplo), vamos
agregando las instrucciones una detrás de la otra en el orden en que queramos que
se apliquen:

LIMIT
Se utiliza para cuando sólo queremos una cantidad limitada de datos
número_fila_inicial es desde qué fila de las que nos devolvería queremos empezar

número_de_filas es el es la cantidad de filas que queremos recibir

ID_Empleado Nombre Apellido

2 Laura Conti

3 Juana Diaz
9. Agregar, Modificar o Eliminar
registros

El lenguaje de manipulación de datos consiste en 3 consultas para manipular los


datos.

INSERT
Inserta nuevos registros en una tabla

ID_Empleado Nombre Apellido

1 Laura Conti

2 Juana Diaz

3 Carlos García
O también se pueden especificar las columnas a las que se les agrega datos:

DELETE

Sirve para eliminar registros de una tabla.


ID_Empleado Nombre Apellido

1 Laura Conti

3 Carlos García

También se pueden eliminar todas las filas de una tabla:

UPDATE
Sirve para modificar datos de una tabla
ID_Empleado Nombre Apellido

1 Lara Conti

3 Carlos García

Instalación de MySQL y otras herramientas

Para poder probar de forma local las consultas y operaciones que acabamos de ver
necesitamos tener instalado MySQL y algún cliente o gestor que nos permita tanto
administrar las bases de datos como las tablas. Para esto utilizaremos un paquete
de aplicaciones llamado Wamp Server que incluye MySQL como motor de base de
datos, a la vez que instala y configura de forma automática el servidor Apache y el
intérprete del lenguaje PHP. Tanto PHP como Apache nos serán de utilidad para
ejecutar una herramienta llamada phpMyAdmin. Esta aplicación nos permite
administrar bases de datos MySQL de forma muy sencilla.

WampServer puede ser descargado para windows de forma gratuita desde


[Link] En caso de utilizar la plataforma de Mac, su
equivalente es MAMP y puede ser descargado desde [Link]
Cualquiera sea el que instalemos deberemos seguir las instrucciones de instalación
provistas en ambos sitios.

Una vez instalado WampServer, nos aseguramos de que los servicios están
ejecutándose y abriremos la dirección [Link] Una vez ahí, en la sección
de Tools o herramientas buscaremos el link a phpMyAdmin.
En caso de que nos pida las credenciales de acceso al servidor de MySQL, y no las
hayamos modificado, ingresamos root como usuario y dejaremos vacío el campo de
contraseña (MAMP generalmente usa también root como contraseña).

Una vez que ingresamos al servidor podemos ejecutar las consultas en la pestaña
SQL.
Bibliografía utilizada y sugerida

Artículos de revista en formato electrónico:


SQL Commands Disponible desde la URL:
[Link]

Tutorial de SQL Disponible desde la URL:


[Link]

Wampserver Disponible desde la URL: [Link]

También podría gustarte