Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2...

38
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ÁTICA Programas Utilitarios 26/06/2009 1

Transcript of Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2...

Page 1: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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

Page 2: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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.

Page 3: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

Bases de Datos Relacionales

26/06/20093

Page 4: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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.

Page 5: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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.

Page 6: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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.

Page 7: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… continua

26/06/20097

Actúa como interface entre los programas de aplicación

y los archivos de datos físicos

Page 8: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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

Page 9: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… continua

26/06/20099

Entre los principales DBMS:

• Microsoft SQL server

• Microsoft Access

• Oracle

• Sybase

• MySQL

• PostgreSQL

Page 10: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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:

Page 11: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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)

Page 12: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… continua

26/06/200912

Tabla AUTOR

• 3 registros de 5 campos cada uno

Page 13: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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.

Page 14: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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.

Page 15: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… continua

26/06/200915

Problema: Duplicación de datos.

Page 16: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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

Page 17: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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)

Page 18: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… continua

26/06/200918

Ejemplo: BD de 4 tablas

Page 19: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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.

Page 20: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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).

Page 21: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… continua

26/06/200921

Tabla SecundariaTabla Principal

Page 22: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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.

Page 23: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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)

Page 24: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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.

Page 25: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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

Page 26: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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

Page 27: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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:

Page 28: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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.

Page 29: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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

Page 30: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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).

Page 31: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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

Page 32: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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.

Page 33: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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

Page 34: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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

Page 35: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

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.

Page 36: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… 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.

Page 37: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

… continua

26/06/200937

Page 38: Sesión 24 Introducción a las Bases de Datos Relacionales ... · PDF fileAGENDA 2 26/06/2009 Conceptos básicos de bases de datos relacionales. •Base de datos. Tablas, campos y

Fin de Sesión

26/06/200938