Tablas
relacionales
Bases de
Datos
¿Qué es una Base de Datos?
- Para poder entender qué es y cómo funciona una Base de datos, primero se debe conocer qué es un Dato.
¿Qué es un dato?
Un dato son hechos, eventos, transacciones, etc., que han sido registrados Los datos se refieren generalmente a
situaciones reales, y se representan por medio de símbolos. Al ser interpretados, adquieren un significado, y a éste
se lo suele llamar información.
No es posible obtener información del conjunto de datos disponibles sin conocer el contexto en el cual éstos
adquieren un significado: es el contexto el que les confiere significado a los datos.
O bjeto: silla G ente: Evento: Turista va a la oficina de
Turista turismo
A
M
P
L
E
F
O
O
T
E
R
T
E
X
T
Pero la agrupación y relación de los datos, así como su procesamiento es lo que se conoce como Información.
Por ejemplo: Juan, que está haciendo turismo en una ciudad de costa, quiere encontrar la mejor playa para tostarse al sol
y 4
para ello recurre a la oficina de turismo
Entonces, ¿Qué es una Base de datos?
➢ Una BBDD colección de información interrelacionada, organizada,
almacenada y estructurada; es decir, es un archivo electrónico en el
que se almacena información:
• Pueden contener información de diversas fuentes
• Proporcionan mecanismos para extraer rápidamente los datos
• Permiten compartir información entre los distintos departamentos de una
empresa.
➢ Las BBDD son uno de los pilares de la informática.
➢ Las bases de datos están por todos lados a nivel informático.
¿Cómo se ve representada una Base de datos?
¿Qué requerimientos tiene una Base de datos?
• Compartir datos: Se refiere a la posibilidad que entre usuarios compartan
sus datos debido a que están relacionados.
• Definir los datos: Indica la importancia de determinar específicamente qué es y
para qué se utiliza el dato con el fin de evitar la interpretación errónea, y así
aplicarlos en los programas que los van a utilizar.
• Modelo de datos: Corresponde a la estructura gráfica de la forma en la que se
organizan
los datos y se interrelacionan. Está compuesta por entidades, atributos y
relaciones
Pero, ¿Por qué son importantes las Bases de Datos para las
empresas?
Las bases de datos cada vez son más
importantes
para las empresas porque:
Permiten gestionar información de gran valor
sobre sus clientes y sacar el máximo potencial
de la misma.
Definen el producto o servicio o la
segmentación de las campañas de marketing.
Ayudan a conocer mejor a su cliente y mejorar
el negocio.
¿Qué objetivos buscan las empresas trabajando con BBDD?
Por lo general son comunes a la gran parte de empresas. Podemos hacernos una idea con los
objetivos siguientes:
•Contactar con los clientes de una forma más personalizada, aportando calidad
•Tratamiento personalizado y constante con los clientes
•Generar estrategias empresariales
•Tener en cuenta las preferencias de cada cliente en cuestión para poder satisfacer
sus
necesidades.
•Realizar segmentaciones de mercado
•Proporcionar la seguridad y confianza al cliente en la empresa, por lo que ofrece lo que necesita
en el momento oportuno.
Las nuevas tecnologías han traído muchos beneficios, pero también hay que ser conscientes
de la mayor competencia existente, lo que hace que tengan que diseñarse un mayor número de
estrategias y herramientas a fin de aprovechar las muchas opciones que nos permite el
mercado.
Modelos de
Bases de Datos
¿Qué modelos de datos existen?
• Es decir, ¿De qué manera se estructuran los datos?
• 1. El modelo de base de datos plana
En un modelo de base de datos plano, hay dos dimensiones (estructura plana) de conjunto de
datos. Hay una columna de información y dentro de esta columna, se supone que cada dato
tendrá que ver con la columna.
Por ejemplo, un modelo de base de datos plana que sólo incluye códigos postales. Dentro de la
base de datos, sólo habrá una columna y cada nueva fila dentro de una columna será un nuevo
código postal.
¿Qué modelos de datos existen?
2. El modelo de base de datos jerárquica
El modelo jerárquico de bases de datos se asemeja a la estructura de un árbol, tal como
Microsoft Windows organiza las carpetas y archivos. En un modelo jerárquico de bases de datos,
cada enlace es anidado con el fin de conservar los datos organizados en un orden particular en
un mismo nivel de lista.
Por ejemplo, una base de datos jerárquico de ventas puede incluir las ventas de cada día
como un archivo
separado. Anidadas dentro de este archivo están todas las ventas (el mismo tipo de datos) para
el día.
Relaciones uno a
uno
¿Qué modelos de datos existen?
3. Modelo de red
El modelo de red se basa en el modelo jerárquico, permitiendo relaciones de muchos a
muchos entre
registros vinculados, lo que implica registros principales múltiples.
¿Qué modelos de datos existen?
4. Modelo relacional
El modelo relacional es el más popular tipo de base
de datos y una herramienta extremadamente
potente, no sólo para almacenar información,
también para acceder a ella.
Las bases de datos relacionales son organizadas en
forma de tablas. La belleza de estos cuadros es que
la información se puede acceder o añadir sin
reorganizar las tablas.
Una tabla puede tener muchos registros y cada
registro
puede tener muchos campos.
Cabe señalar que cada registro (grupo de
campos) en una base de datos relacional tiene su
propia clave principal. Una clave principal es el
único campo que hace que sea fácil identificar a
¿Qué ventaja tienen las BBDD?
• Una de las ventajas clave es la sencillez que obtenemos al trabajar en ella, a que es fácil
de crear y muy accesible con la opción de ampliar la base de datos.
• Con esta forma de trabajar nos garantiza la uniformidad de los datos y sin olvidar que en él
no existe la
duplicidad de registros, lo que favorece más a la comprensión y la accesibilidad.
• Por otro lado, en este tipo de base de datos tenemos la ventaja de la accesibilidad de
varios usuarios en una misma base y al mismo tiempo, teniendo en cuenta que también
existe la opción de bloquear el acceso durante la actualización de datos con el objetivo de
evitar posibles colapsos o conflictos entre usuarios.
• El RDBMS presenta una gran capacidad en cuanto a la atomicidad debido a la gestión de
reglas y
políticas de la empresa que puede llevar a cabo. A esto se le denomina compromiso
multifacético.
• Otro punto a destacar es que el rendimiento de las bases de datos relacionales es muy
bueno en cuanto a la gran variedad de herramientas que contiene y presenta una
Sistemas
Gestores de
Bases de Datos
¿Qué es un SGBD (Sistema Gestor de Bases de Datos)?
Un Sistema de Gestión de Bases de Datos (SGBD) o DBMS, (por sus siglas en inglés, Database
Management System) es un software que facilita:
a) Definir la Base de Datos: Esto se realiza a través de un lenguaje de definición de datos (DDL
con las siglas en inglés Data Definition Language), para describir las estructuras de
información y los programas que se usan para construir, actualizar e introducir la
información que contiene una Base de Datos.
b) b) Manipular la Base de Datos: Esto se realiza por medio de un Lenguaje de Manipulación de
Datos (DML con las siglas en inglés Data Manipulation language) el cual es utilizado para
escribir programas que crean, actualizan y extraen información de la base de datos sin
intervención del usuario.
c) c) Consultar la Base de Datos: Se utiliza el Lenguaje de Consulta Estructurado (SQL con las
siglas en inglés Structured Query Lenguage) que permite al usuario hacer operaciones o
requisiciones de datos sin tener que escribir un programa.
¿Qué SGDB existen?
¿Cuáles son las principales funciones de un SGBD?
Las principales funciones de un DBMS o SGBD (por sus siglas en inglés, Database
Management
System) son las siguientes:
1. Crear la Base de datos, sus tablas y estructuras de soporte.
2. Crear y actualizar los datos de una Base de datos.
3. Mantener en operación las estructuras de una Base de datos.
4. Forzar el cumplimiento de las reglas de integridad sobre los datos.
5. Control de concurrencia.
6. Seguridad de las Bases de datos.
7. Ejecutar procesos de recuperación y respaldo sobre la Base de datos.
Los SGB son creados y diseñados para administrar gran cantidad de información,
proporcionando fiabilidad en los datos y capaces de soportar la caída del sistema o la violación
¿Cuándo es pertinente utilizar un SGBD?
1. Cuando se maneja grandes volúmenes de datos, de tal forma que no haya duplicidad de
datos y el acceso sea rápido y eficiente.
2. Cuando sea manipulada la información por gran cantidad de usuarios, para evitar problemas
de integridad y control de concurrencia.
3.Cuando las transacciones que se ejecuten queden registradas permanentemente en las
Bases de datos y sean protegidas ante cualquier falla del sistema
4. Cuando su uso sea necesario y constante.
5.Cuando el nivel de seguridad de información sea desarrollado por técnicas y métodos de
acceso a las Bases de datos, en especial si se trabaja desde Internet, llegando incluso al
manejo de la encriptación de datos
¿Qué ventaja nos ofrece trabajar con un SGBD?
1. Disponibilidad, oportunidad y acceso a la información.
2. Mejora la integridad de los datos.
3. Coherencia, flexibilidad y rapidez de los resultados.
4. Mejora el mantenimiento gracias a la independencia de datos.
5. Transacciones múltiples y control de concurrencia.
6. Minimización de la redundancia en los datos.
7. Seguridad en el acceso y la manipulación de los datos.
8. Reducción del espacio de almacenamiento.
Trabajemos con
Sistemas
Gestores de
Bases de Datos
1. Relaciones
• ¿Qué son las relaciones? ¿Qué nos van a permitir?
• Herramienta que nos va a permitir trabajar con varias tablas a la vez
• Por ejemplo, nos sirve para saber qué cliente compra qué tour en qué sucursal con qué
compañía viaja y en que tipo de alojamiento de hospeda
• De momento eso no lo podemos saber porque nuestras tablas son independientes
• Tenemos que realizar relaciones
• ¿Qué tipos de relaciones tenemos?
• 1a1
• Por ejemplo cuando un cliente solo compra un producto turístico en una oficina
• 1 a varios
• Por ejemplo, cuando una compañía de viajes realiza los trayectos de dos o más destinos turísticos
• Varios a varios
• Por ejemplo, cuando varios clientes contratan varios destinos turísticos.
• ¿Qué diferencia hay del varios a varios al de uno a varios?
• Tiene mucha importancia a la hora de diseñar las relaciones
• Puede modificar el número de tablas
• Es necesario añadir una tabla extra que permita esa relación varios a varios
¿Qué tipo de relaciones tenemos nosotros?
- Empecemos con papel y boli
- ¿Qué tablas tenemos?
- ¿Cómo podemos definir las relaciones entre las tablas?
- ¿A través de que campo podemos establecer esas
relaciones?
- Se necesita establecer campos clave y campos
relacionados
- Crear un nuevo campo en las tablas
Volvamos a Access. Introduzcamos los nuevos campos dentro de las tablas para
hacer posibles esas relaciones de uno a varios
Vuelta al papel y boli: ¿Qué sucede en el caso de
tener relaciones varios a varios?
Es necesario crear una tabla
intermedia entre ambas para
poder modelar esas relaciones
Volvamos a Access. Definamos una nueva tabla intermedia que
nos permita realizar las relaciones varios a varios entre las
tablas
Volvamos a Access. Definamos las relaciones entre nuestras tablas
¿Dónde se encuentra?
Definamos nuestras relaciones
Otro ejemplo a papel y boli
Somos una empresa de prestación de servicios hoteleros a clientes. Actuamos de
intermediarios entre los hoteles y los clientes. Queremos construir una base de datos
que nos permita conocer qué clientes contratan qué tipo de habitaciones en cuáles de
los hoteles que trabajan con nosotros.
• Clientes: Nombre del cliente, apellidos,
sexo, edad
• Habitación: Tipo de habitación
• Hotel: Nombre del hotel, ciudad y dirección
• ¿Cómo definiríais las relaciones que se dan?
• ¿Cómo lo estabelcerias si estuvieras en access?
Otro ejemplo a papel y boli
Trabajamos como gestor de los parques regionales de nuestra CA y queremos desempeñar
un control sobre el número de visitantes existentes de cada parque y su comportamiento
turístico
• Para cada provincia queremos saber cuántos parques regionales tenemos, teniendo en
cuenta que un parque regional solo puede estar enmarcado dentro de una provincia.
• De cada parque queremos guardar su nombre, su área.
• De cada provincia tenemos su nombre
• Municipios con los que se relaciona
• Queremos saber el número de visitantes que reciben cada uno de los
parques regionales
• De cada visitante queremos saber el nombre, la edad, la nacionalidad y su
pernocta en la
zona
• En el entorno de cada parque regional existen diferentes tipos de alojamiento.
• De cada alojamiento queremos saber el tipo
de alojamiento Además, buscamos conocer el modo en el que los
visitantes han accedido al parque
• Queremos saber el tipo de vehículo
Otro ejemplo a papel y boli
Se desea almacenar la información de una compañía aérea en una base de datos relacional.
La compañía aérea tiene tres recursos principales: aviones, pilotos y miembros de
tripulación. De cada piloto se desea conocer su código, nombre y horas de vuelo. De los
miembros de tripulación sólo mantendremos su código y nombre. Todos ellos (pilotos y
miembros) tienen una base a la que regresan después de los vuelos de una jornada. Un
vuelo que va desde un origen a un destino y a una hora determinada, tiene un número de
vuelo (por ejemplo, el vuelo de Palma a Alicante de las 13:50 es el vuelo IB-8830). De cada
vuelo que se va a realizar durante los próximos tres meses, así como de los vuelos que ya
se han realizado, se desea saber el avión en que se va a hacer o en el que se ha hecho, el
piloto y cada uno de los miembros de la tripulación. Cada avión tiene un código, es de un
tipo (por ejemplo, BOEING-747) y tiene una base donde es sometido a las revisiones
periódicas de mantenimiento.