Logo Studenta

INTRODUCCION A LAS BASES DE DATOS

¡Este material tiene más páginas!

Vista previa del material en texto

INTRODUCCION A LAS BASES DE DATOS 
Procesamiento de Archivos vs 
Bases de Datos 
 
 
 
 
ARCHIVOS 
 
Datos repetidos. 
No se manejan estándares. 
Había inconsistencia de 
datos. 
Falta de seguridad en los 
datos. 
No existían aplicaciones de 
uso general. 
BASES DE DATOS 
 
Eliminar redundancias. 
Poder compartir los datos. 
Cumplir normas establecidas. 
Mantener integridad y 
seguridades de datos. 
Reducir inconsistencias. 
 
Primera práctica: Realizar un programa que pida los datos de 
alumnos (nombre, apellidos, dni, edad, asignaturas en las que 
está matriculado) y los almacene en un fichero. Realizar un 
segundo programa que nos pida un dni y nos devuelva el resto de 
los datos del alumno. 
 
Base de Datos 
Es un repositorio en donde guardamos información que podemos 
almacenar y guardar. 
Es un conjunto de tablas y procesos organizados, estructurados, 
relacionadas entre si, con la finalidad de manipular datos. 
Más definiciones de Base de Datos 
Fondo común de información almacenada en una computadora para 
que cualquier persona programa autorizado pueda acceder a ella, 
independientemente de su procedencia del uso que haga. 
Una base de datos o banco de datos (en ocasiones abreviada con 
la sigla BD o con la abreviatura b. d.) es un conjunto de datos 
pertenecientes a un mismo contexto y almacenados 
sistemáticamente para su posterior uso. En este sentido, una 
biblioteca puede considerarse una base de datos compuesta en su 
mayoría por documentos y textos impresos en papel e indexados 
para su consulta. En la actualidad, y debido al desarrollo 
tecnológico de campos como la informática y la electrónica, la 
mayoría de las bases de datos están en formato digital 
(electrónico), que ofrece un amplio rango de soluciones al 
problema de almacenar datos. 
Existen programas denominados sistemas gestores de bases de 
datos, abreviado SGBD, que permiten almacenar y posteriormente 
acceder a los datos de forma rápida y estructurada. Las 
propiedades de estos SGBD, así como su utilización y 
administración, se estudian dentro del ámbito de la informática. 
 
Sistema de Gestión de Bases de Datos 
Conjunto de elementos software con capacidad para definir, 
mantener y utilizar una base de datos. 
 
Componentes 
Hardware Dispositivo de almacenamiento (en nuestro caso 
ninguno especial. 
Software DBMS ó Sistema Manejador de Base de Datos (MYSQL en 
nuestro caso). 
Datos Almacenados y Procesados. 
 
Tipos de usuarios 
Usuario Final Persona que usa los datos. 
Desarrollador de Aplicaciones Persona que desarrolla 
aplicaciones para el sistema en algún lenguaje de programación 
(que normalmente requerirán algún tipo de librería). 
DBA (Administrador de Base de Datos) 
Persona que asegura la integridad, inconsistencia, seguridades 
de datos. 
Esta se encarga del mantenimiento periódico o diario de la 
base de datos. 
Interactúan con la base de datos 
Modelización de una base de datos 
 Modelos de datos lógicos: Destacan los modelos ENTIDAD-
RELACIÓN y el modelo orientado a objetos. Usaremos el 
modelo ENTIDAD-RELACIÓN. 
 Modelos de datos implementables: Usaremos el modelo 
RELACIONAL, aunque también están el jerárquico y el modelo 
en red. 
 
MODELO RELACIONAL: De forma resumidad podríamos decir que consta 
de lo siguiente: 
 Definición de tablas para almacenar datos. 
 Álgebra Relacional: Operaciones con los datos (entre las 
tablas) 
 
El modelo anterior es el modelo que siguen gran cantidad de 
Sistemas de Bases de Bases como son Oracle, MySQL, Postgresql, 
Microsoft sql server, etc. Lo común a todos ellos es la 
utización del SQL (lenguaje de consulta estructurado) para 
definir nuestra base de datos y realizar búsquedas en la misma. 
Una de sus características es el manejo del álgebra y elcálculo 
relacional permitiendo efectuar consultas con el fin de 
recuperar -de una forma sencilla información de interés de una 
base de datos, así como también hacer cambios sobre ella. 
 
 
 
Modelización semántica: El modelo Entidad-Relación: 
El modelo E-R es un mecanismo formal para representar y 
manipular información de manera general y sistemática. En él 
cualquier dato o concepto debe ser definido o modelado de manera 
única, posteriormente se establecerán las conexiones con tros 
datos. Por ejemplo algo llamado pedido será definido una sola 
vez y posteriormente se establecerá su relación con clientes, 
productos, etc. Incluir en un modelo más datos de los necesarios 
sólo servirá para añadir ruido al diseño y entorpecer la 
implementación. 
 
 Elementos del modelo: 
1. Entidades y atributos: 
a. Entidad: objeto distinguible de los demás (libro, 
empleado, departamento, asignatura). 
b. Atributos: propiedades que caracterizan un conjunto 
de entidades (dni, nombre, sueldo, etc.). El conjunto 
devalores permitidos es conocido como dominio. Si uno 
o varios atributos identifican a una entidad de 
manera unívoca a ese conjunto de atributos los 
llamaremos clave primaria (por ejemplo el dni). 
c. Entidad débil: Entidades que aún teniendo atributos 
propios ningún subconjunto de ellos permite 
identificar unívocamente a ese entidad (no hay clave 
primaria) y para ello hemos de relacionar esa entidad 
con otra que llamaremos entidad fuerte (por ejemplo 
los asientos de un avión con un avión, los 
movimientos con una cuenta). 
2. Asociaciones o relaciones: Conexión semántica entre dos o 
más conjuntos de entidades (autor escribe libro, empreado 
trabaja departamento). 
a. Muchos a muchos: libros y autores 
b. Uno a muchos: departamentos y empleados (un empleado 
no puede estar en varios departamentos). 
c. Uno a uno: relación casado. 
Las relaciones pueden tener atributos por ejemplo 
trabajador trabaja (fecha de alta) en departamento. 
Existen relaciones que conectan un conjunto de entidades 
consigo mismo (por ejemplo empresa trabaja para empresa). 
3. Diagramas: 
 
Ejemplo de uso de diagramas con modelo de gestión 
universitaria: nuestras entidades son departamentos, 
profesres, asignturas, grupos, matrículas, alumnos, aulas, 
ect. 
 Un profesor pertenece a un solo departamento. 
 Un profesor puede impartir varios grupos de la 
misma o diferente asignatura y un grupo ha de ser 
impartido por al menos un profesor. 
 Hay grupos de teoría y de practicas con un máximo 
de alumnos por grupo. 
 Los grupos tienen clase a días y horas 
determinadas. 
 Los alumnos que se matriculan en una asignatura lo 
hacen en grupo determinado. 
 Todo departamento tiene un director. 
 
4. Generalización y especialización: 
 
5. Agregación: 
 
6. Relaciones n-arias: 
 
 
 Del modelo E-R al modelo relacional: La única estructura 
presente en el modelo relacional es la tabla. Vemos como 
pasar la información de los diagramas anteriores a tablas que 
contendrán nuestros datos. 
1. Entidades: Paso directo, tenemos una tabla con todos los 
atributos de la entidad. La clave primaria hace que la 
tabla no contenga filas repetidas. 
2. Entidades débiles: La tabla correspondiente contendrá 
todos los atributos propios más la clave primaria del 
cnjunto de entidades fuertes del que depende 
3. Conexiones: La tabla correspondiente tendrá como atributos 
las claves primarias de los elementos relacionados más los 
atributos propios de la conexión. 
a. Muchos a muchos: La unión de las claves primarias de 
las entidades junto con algún atributo de la relación 
(deenderá de su significado) formará la clave 
primaria de la tabla obtenida. 
b. Muchos a uno: La clave primaria de la entidad UNO 
suele ser la clave primaria de la tabla (quizás falte 
añadir algún atributo de la relación). 
c. Uno a Uno: Cada clave primaria en las entidades es 
clave primaria en la tabla que obtenemos (solamente 
se elegirá una de ellas). 
4. Generalización: Dos opciones. 
a. Podemos crear una tabla para cada una de las 
entidades.Tendríamos así las tablas 
EMPLEADO(NRP,NOMBRE, DIRECCIÓN), 
FUNCIONARIO(NRP,NIVEL, FECHAALTA) y 
LABORAL(NRP,GRUPO, ESPECIALIDAD). 
b. La entidad superior desaparece y tenemos las tablas 
FUNCIONARIO(NRP,NOMBRE, DIRECCIÓN, NIVEL, FECHAALTA) 
y LABORAL(NRP,NOMBRE, DIRECCIÓN,GRUPO,ESPECIALIDAD). 
5. Agregación: Las agregaciones no se reflejan en tablas 
aunque cuando intervienen en una relación hay que pensar 
que su clave primaria es la de la relación que contenida 
en ella. 
6. Relaciones n-arias: 
a. Muchos-muchos-muchos: Se utilizan las claves 
primarias de las entidades y los atributos de la 
relación. 
 
La tabla en este caso es SUMINISTRO(COD-PROV,COD-
PROY,COD-PIE). 
b. Muchos-muchos-uno: 
 
Para este caso utilizamos una generalización de la 
forma siguiente.
Obtenemos en este caso las tablas SUM1(COD-PIEZA,COD-
PROV) y SUM2(COD-PIE,COD-PROV,COD-PROY). 
 
c. Mucho-uno-uno: 
 
Tenemos en este caso dos opciones: 
 
Las tablas para la primera opción serían 
SUM1(COD-PIE,COD-PROY) y SUM2(COD-PIE,COD-PROY). 
Para la segunda opción tenemos 
SUM1(COD-PROV,COD-PROY) y SUM2(COD-PROV,COD-PIE). 
 
 Ejercicio: Pasar al modelo relacional el ejemplo anterior. 
 Ejercicio: Se trata de organizar la información relativa a 
una compañía de seguros de automóvil, donde se mantienen daos 
acerca de los clientes, los vehículos, las polizas y los 
partes de accidente. Tenemos las siguientes restricciones: 
a. Un cliente puede tener asegurado más de un vehículo en 
la compañía. 
b. Cada vehículo posee una única póliza de seguro que 
tendrá un precio en función de la cobertura que se haya 
contratado y de las carácter´´isticas del vehículo. 
c. Sobre los siniestros ocurridos deberá conocerse la 
fecha, el lugar, la causa y la cuantía de los daños 
ocasionados. Cada tip de siniestro o accidente (colisión 
múltiple, adelantamiento indebido, exceso de velocidad, 
etc.) va identificado por un código. 
d. En un accidente pueden estar involucrados verios 
vehículos asegurados por la misma compañía. 
Pasar al modelo relacional el diagrama anterior. 
 
 Ejercicio: Gestión de la información que se manipula en un 
hospital sobre pacientes, médicos, historias clínicas, 
ingresos, pruebas, etc. Tenemos la siguiente situación: 
o Cada paciente tiene asociada una historia clínica única 
que se genera la primera vez que el paciente visita el 
hospital y en la cual se van anotando todos sus 
ingresos. 
o Las habitaciones pueden tener varias cama, que irán 
numeradas y serán de un determinado tipo. 
o Durante un ingreso, el paciente ocupará una misma cama y 
se le podrán realizar tantas pruebas como sea necesario. 
o Los distintos tipo de prueba van codificadas y se 
realizan con un aparato determinado en una sala 
determinadas. 
o Es importante saber cuándo (día y hora) se ha realizado 
cadas una de las pruebas a un paciente y qué 
especialista la ha llevado a cabo. 
o Los atributos asociados a cada conunto de entidades 
serán los habituales en estos casos. 
 a
 
 Disponemos de los siguientes elementos de información: 
Tarjetas de crédito (identificadas por un número), titulares 
de dichas tarjetas (de los que conocemos DNI, domicilio y 
teléfono) y cuentas corrientes (con un código, saldo y fecha 
de apertura). Las restricciones que tenemos son: 
o Cada persona puede tener más de una tarjeta. 
o Cada tarjeta tiene un único titular o propietario. 
o Cada tarjeta está asociada a una única cuenta. 
o Podemos cargar más de una tarjeta a una cuenta 
determinada. 
o Cada cuenta pertenece a una sola persona. 
o Una persona puede tener más de una cuenta. 
 Una empresa almacena datos referentes a departamentos 
(código, nombre, ubicación), empleados (DNI, nombre, DNI del 
cónyuge), proyectos (código, nombre, presupuesto9, 
proveedores (código, nombre, teléfono, dirección) y productos 
(código, nombre, precio). La restricciones son: 
o Cada empleado trabaja en un departamento. 
o Un empleado puede trabajar en varios proyectos. 
o Existe un empleado que dirige cada proyecto. 
o Los proyectos usan productos. 
o Los precios de los productos pueden variar de un 
proveedor a otro. 
o Algunos productos tiene componentes que son, a su vez, 
productos. 
 
FORMALIZACIÓN DEL MODELO RELACIONAL: 
Atributo: cuanquier elemento de información del “mundo” 
que vamos a representar, susceptible de tomar valores. 
Dominio: llamaremos dominio D al conjunto de valores que 
puede tomar un determinado atributo A. 
Relación: Consideremos los atributos A
i 
. Una relación 
asociada a los atributos anteriores es un cualquier 
subconjunto finito del producto cartesiano de sus 
dominios. 
Base de datos relacional: Un base de datos relacional es 
un conjunto finito de relaciones. 
Propieades de las relaciones: 
 No hay orden en sus elementos. 
 No orden en las tuplas. 
 No hay elementos duplicados. 
Clave candidata (a clave primaria): Subconjunto C de los 
atributos de una relación que verifica: 
1. Para cualquier par de elementos de la relación el 
conjunto de valores que toman en los atributos de la 
clave canditada no coinciden. 
2. No existe ningún subconjunto C’ de C que verifique el 
punto anterior.

Continuar navegando