Sesión 24
Introducción a las Bases de Datos Relacionales con Microsoft Access 2007
Docente: Ing. María Nícida Malca Quispe
INGENIERÍA TELEINFORMÁTICAProgramas Utilitarios
26/06/20091
AGENDA
26/06/20092
Conceptos básicos de bases de datos
relacionales.
• Base de datos. Tablas, campos y registros.
• Bases de datos planas y relacionales
• Relaciones entre tablas. Claves principales y
claves foráneas. Tipos de relaciones:
cardinalidad.
Bases de Datos Relacionales
26/06/20093
Base de Datos
26/06/20094
Una base de Datos (BD) es una entidad en la cual se pueden almacenar datos relacionadosde manera estructurada, con la menor redundancia posible.
Diferentes programas y usuarios deben poder utilizar estos datos.
“Sistema de información" es el término general utilizado para la estructura global que incluye todos los mecanismos para compartir datos que se han instalado.
… continua
26/06/20095
Punto de vista informático:
• Una BD es un sistema formado por 3 componentes principales:
hardware, el software DBMS y los datos a manejar, y el personal
encargado del manejo del sistema.
Una BD consta de distintos objetos: tablas, índices, consultas,
relaciones, informes, formularios, etc. Todos estos objetos se
almacenan físicamente en un solo archivo, el cual constituye
por sí solo la base de datos.
Sistema de Administración de Base de Datos
26/06/20096
Una BD es gestionada y organizada mediante programas
denominados Sistemas Administradores de Bases de
datos (DBMS, Database Management System).
Un DBMS es un software que permite a una
organización centralizar sus datos, administrarlos de
forma eficiente y proporcionar acceso a ellos por medio
de los programas de aplicación.
• Introducir, almacenar, ordenar y manipular datos,
• Organizarlos de manera significativa para que se pueda obtener
información no visible como totales, tendencias o relaciones de
otro tipo.
… continua
26/06/20097
Actúa como interface entre los programas de aplicación
y los archivos de datos físicos
… continua
26/06/20098
Entre sus objetivos se tienen:
• Gestionar y controlar los datos
• Facilitar la compartición de los datos
• Proteger los datos de accesos no autorizados
• Ejecutar procedimientos para la integridad de los
datos
• Controlar la concurrencia de usuarios
• Proporcionar utilidades para el mantenimiento de los
datos
… continua
26/06/20099
Entre los principales DBMS:
• Microsoft SQL server
• Microsoft Access
• Oracle
• Sybase
• MySQL
• PostgreSQL
Conceptos Básicos
26/06/200910
En la terminología propia de las BD hay tres conceptos claves:
campo, registro y tabla.
Un DBMS almacena la información que se introduce en forma
de tablas, como por ejemplo en una guía telefónica:
… continua
26/06/200911
Campo: Cada una de las partes en las que se desglosa
la información (columnas).
Registro: Es el concepto básico en el almacenamiento de
datos. El registro agrupa la información asociada a un
elemento de un conjunto (fila) y está compuesto por
campos.
Tabla: Conjunto de registros homogéneos con la
misma estructura. Una tabla es un objeto que almacena
datos en registros (filas) y campos (columnas)
… continua
26/06/200912
Tabla AUTOR
• 3 registros de 5 campos cada uno
Campos o Atributos Derivados
26/06/200913
Los atributos derivados son aquellos valor puede obtenerse
en función de los valores almacenados en otros atributos.
Por ejemplo el atributo Edad de la tabla PERSONA es un
atributo derivado porque se puede obtener en función del
valor de la tributo fecha_nacimiento.
BD Planas y Relacionales
26/06/200914
BD Plana: Utiliza una sola tabla para almacenar la
información.
• Como en el ejemplo anterior, la BD necesitaba una sola tabla
• Pero puede haber casos en los que se necesite más de una.
… continua
26/06/200915
Problema: Duplicación de datos.
… continua
26/06/200916
BD Relacionales: Datos organizados en distintas tablas,
relacionadas mediante campos con contenido común.
Por ejemplo en un hospital, además de datos personales del
paciente, se requiere tener constancia de las visitas
Datos duplicados
… continua
26/06/200917
Separando la información en varias tablas, que luego se relacionarán o juntarán por un campo en común:
Evita los datos repetidos.
Es necesario que las dos tablas contengan un campo en común (en este caso el código del doctor, código del paciente)
… continua
26/06/200918
Ejemplo: BD de 4 tablas
Relaciones entre Tablas
26/06/200919
Una relación es una correspondencia o asociación lógica
entre dos o mas tablas.
Para poder relacionar tablas entre sí se deberá especificar un
campo en común que contenga el mismo valor en las dos
tablas y dicho campo será clave principal en una de ellas.
… continua
26/06/200920
Evita la duplicidad de datos, ahorrando memoria y espacio
en el disco, aumentando la velocidad de ejecución y facilitando
el trabajo con tablas.
Permite recopilar de nuevo información fraccionada,
cuando sea necesario.
Es imprescindible realizar un estudio previo del diseño de
la BD.
Las tablas se relacionan de dos a dos, donde una de ellas
será la tabla principal (origen de la relación) y la otra será
la tabla secundaria (destino de la relación).
… continua
26/06/200921
Tabla SecundariaTabla Principal
Clave Principal o Primaria (Primary Key, PK)
26/06/200922
Clave: Es un conjunto de uno o más atributos (campos) que
permiten identificar de forma única a cada instancia
(registro) de la tabla.
Proporciona un valor único para cada fila de la tabla.
Clave Candidata: Cada una de los conjuntos de atributos
que pueden actuar como clave de una entidad.
Clave Primaria (PK): Clave candidata elegida por el
diseñador de la BD para identificar los registros de una tabla.
No podemos definir más de una PK, pero podemos tener una
PK compuesta por más de un campo.
… continua
26/06/200923
Ejemplos:
Tabla
ALUMNO(dni,nombre,apellidos,codigo,edad,procedencia)
• Claves candidatas:
dni
codigo
(nombre, apellidos, no es una clave porque pueden existir en la BD dos
alumnos distintos con los mismos nombre y apellidos.
Tabla PRESTAMO(ISNB,titulo,dni,fecha,cod-prestamo)
• Claves candidatas:
cod-prestamo
(ISBN,dni,fecha)
Clave Foránea o Externa (Foreign Key, FK)
26/06/200924
Una FK es un campo de una tabla que se
corresponde con una PK de otra tabla.
Una relación hace coincidir los datos de los
campos clave (a menudo un campo con el
mismo nombre en ambas tablas).
En la mayoría de los casos, estos campos
coincidentes son la clave principal de una
tabla, que proporciona un identificador único
para cada registro, y una clave externa de la
otra tabla.
… continua
26/06/200925
Ejemplo, las categorías pueden asociarse a las películas que
clasifican mediante la creación de una relación de tabla entre
los campos CodigoCat en las tablas Categoria y Pelicula.
PK
FK
PKFK
Grado de una Relación
26/06/200926
Es el número de tablas que participan en la relación.
El grado más común de una relación es binario, que
relaciona dos tablas
PERSONA VEHICULOPosee
ALUMNO MATRICULARegistra
Multiplicidad o Cardinalidad de una Relación
26/06/200927
Es el número de instancias (registros) de una
tabla que están relacionadas con las instancias de
la otra tabla.
Especifica la forma en que se relacionan los
registros de las tablas.
Se pueden distinguir tres tipos de relaciones:
• Relación Uno a Uno:
• Relación Uno a Varios:
• Relación Varios a Varios:
Tipos de Relaciones
26/06/200928
Relación Uno a Uno: Cuando un registro de una tabla sólo
puede estar relacionado con un único registro de la otra tabla
y viceversa.
… continua
26/06/200929
Ejemplo: tenemos dos tablas una con los datos de diferentes
poblaciones y otra con una lista de Alcaldes, una
población sólo puede tener un alcalde, y un alcalde lo
será únicamente de una población.
01 Jayanca 11000
02 Lambayeque 45000
03 Mórrope 29000
04 Motupe 20000
01 Juan Pérez Arévalo 01
02 José Arcila Suárez 02
03 María Estela Sánchez 03
04 Luis Ayala Bances 04
… continua
26/06/200930
Relación Uno a Varios: Cuando un registro de una tabla
(tabla secundaria) sólo puede estar relacionado con un
único registro de la otra tabla (tabla principal) y un
registro de la otra tabla (tabla principal) puede tener más
de un registro relacionado en la primera tabla (tabla
secundaria).
… continua
26/06/200931
Ejemplo: tenemos dos tablas una con los datos de diferentes
poblaciones y otra con los habitantes, una población
puede tener más de un habitante, pero un habitante
pertenecerá (estará empadronado) en una única
población.
01 Jayanca 680
02 Lambayeque 330
03 Mórrope 1041
16784520 Juan Pérez Arévalo 12/01/1945 01
16784521 José Arcila Suárez 20/02/1964 01
16784522 María Estela Sánchez 23/01/1945 02
16784523 Luis Ayala Bances 16/04/1986 02
16784524 Rosa Ayala Ruiz 26/08/1989 02
16784525 Carmen Villegas Paz 26/05/1976 03
16784526 Pedro Mego Llaque 30/01/1985 03
… continua
26/06/200932
Relación Varios a Varios: Cuando un registro de una tabla
puede estar relacionado con más de un registro de la otra
tabla y viceversa.
Las relaciones varios a varios se suelen representar
definiendo una tabla intermedia entre las dos tablas.
… continua
26/06/200933
Ejemplo: tenemos dos tablas una con los datos de clientes
y otra con los artículos que se venden en la empresa, un
cliente podrá realizar un pedido con varios artículos, y un
artículo podrá ser vendido a más de un cliente.
01 José Arcila Suárez Izaga 340
02 María Estela Sánchez San José 450
03 Luis Ayala Bances Júpiter 321
04 Rosa Ayala Ruiz Arizola 859
05 Carmen Villegas Paz Balta 450
06 Pedro Mego Llaque
01 Papel 3.5 100
02 Lapiceros 0.5 800
03 Folders 0.7 1000
04 Lápices 0.5 1500
06 Plumones 1.5 1200
… continua
26/06/200934
Para resolver la relación, definir una Tabla Asociación
líneas de pedido relacionada con clientes y con
artículos.
La PK de la nueva tabla
estará formada por las
FK de las tablas que
relaciona
01 José Arcila Suárez Izaga 340
02 María Estela Sánchez San José 450
03 Luis Ayala Bances Júpiter 321
04 Rosa Ayala Ruiz Arizola 859
05 Carmen Villegas Paz Balta 450
06 Pedro Mego Llaque
01 Papel 3.5 100
02 Lapiceros 0.5 800
03 Folders 0.7 1000
04 Lápices 0.5 1500
06 Plumones 1.5 1200
01 01 20 12/01/2005
01 02 15 25/01/2005
02 02 20 26/02/2005
02 06 10 28/02/2005
03 01 05 14/03/2005
03 03 12 12/03/2005
03 04 10 21/01/2005
05 06 15 25/01/2005
Proceso de Diseño de una BD
26/06/200935
Finalidad de la base de datos: Define el propósito de
la BD y por quiénes va a ser utilizada.
Información necesaria: Reunir todos los tipos de
información que desee registrar en la BD, como los
nombres de productos o los números de pedidos.
Estructurar la información en tablas: Dividir los
elementos de información en entidades o temas
principales, como Productos o Pedidos. Cada tema pasará
a ser una tabla.
Definir los campos: Qué información desea almacenar
en cada tabla. Por ejemplo, una tabla Empleados podría
incluir campos como Apellido y Fecha de contratación.
… continua
26/06/200936
Claves principales: Elija la clave principal de cada tabla, por
ejemplo , el Id. de producto o Id. de pedido.
Definir relaciones entre las tablas: Examine cada tabla y
decida cómo se relacionan los datos de una tabla con las demás
tablas. Agregue campos a las tablas o cree nuevas tablas para
clarificar las relaciones según sea necesario.
Ajustar el diseño: Analice el diseño para detectar errores.
Cree las tablas y agregue algunos registros con datos de
ejemplo. Compruebe si puede obtener los resultados previstos
de las tablas. Realice los ajustes necesarios en el diseño.
Aplicar las reglas de normalización Aplique reglas de
normalización de los datos para comprobar si las tablas están
estructuradas correctamente.
… continua
26/06/200937
Fin de Sesión
26/06/200938