Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base...

40
Base de Datos P. UNIVERSIDAD CATÓLICA DE VALPARAÍSO FACULTAD DE INGENIERÍA ESCUELA DE INFORMÁTICA Programa de Aplicación Usuario A Usuario B Usuario N Bodega Insumo Proveedor Profesores: José Miguel Rubio L.

Transcript of Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base...

Page 1: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos

P. UNIVERSIDAD CATÓLICA DE VALPARAÍSOFACULTAD DE INGENIERÍAESCUELA DE INFORMÁTICA

Programa de Aplicación

Usuario A

Usuario B

Usuario N

Bodega

Insumo

Proveedor

•••

•••

Profesores:José Miguel Rubio L.

Page 2: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 2

Índice de Contenidos

Introducción a las Bases de Datos

El Recurso Dato

Dato v/s Información

Historia de las Bases de Datos

Componentes de un ambiente de Base de Datos

Beneficios & Riesgos del uso de Base de Datos

Sistema de archivos v/s Bases de Datos

Bases de Datos y Desarrollo de Sistemas de Información

Page 3: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 3

Índice de Contenidos

Sistemas de Gestión de Base de Datos

ConceptosPrincipales funcionesVentajas de utilizar SGBDConsideraciones del uso de un SGB

Page 4: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 4

Índice de Contenidos

Modelamiento de una Base de DatosModelo Conceptual: Entidad Relación

Asociaciones entre entidades, Cardinalidad de AsociacionesClaves candidatas y claves primarias, Atributos multivaluadosReglas del Negocio

Modelo Lógico: RelacionalModelo LógicoTransformación de entidades y relacionesProceso de Normalización de RelacionesAnálisis de vistas

Page 5: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 5

Índice de Contenidos

Metodología para el desarrollo de una BD

Identificación y Formulación de RequerimientosDiseño ConceptualDiseño LógicoDiseño Físico

Page 6: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 6

Definir Diseño de la Base de Datos

Realidad Requisitos de Datos

Diseño Conceptual

Diseño Lógico

Diseño Físico

Modelo Conceptual

Modelo Lógico

Modelo Físico

Esquema Conceptual

Esquema Lógico

Esquema Físico

Modelo Externo

Page 7: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 7

Diseño Lógico

El objetivo del Diseño Lógico es traducir el Diseño Conceptual (el que representa los requerimientos) en un Diseño Lógico que pueda ser implementado sobre un DBMS.

Existen varias representaciones para el modelo lógico de la BD, entre las que se encuentran:

Modelo JerárquicoReticularRelacionalModelo Orientado a Objeto

Page 8: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 8

Modelos Jerárquicos

Desarrollo de los modelos jerárquicos y del concepto de BD (1960-70):

Un ejemplo de bases de datos jerárquica es IMS de IBM desarrollado a finales de los 60.

Definición de independencia, seguridad, etc.Definición de lenguajes de Bases de Datos

(1975) Creación y trabajos del comité SPARC/DB (ANSI)

Arquitectura de SGDB en tres niveles(hasta 1980) Desarrollo de los sistemas en red y jerárquicos avanzados

Page 9: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 9

Modelos Jerárquicos

En los modelos jerárquicos, los elementos tienen una relación padre/hijo donde un hijo tiene un solo padre mientras que un padre puede tener varios hijos

Page 10: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 10

Modelos Jerárquicos

Este modelo representa un conjunto de asociaciones entre entidades, del tipo 1:1 y 1:M, es decir una jerarquía de entidades (o árbol).

En una jerarquía un padre (registro propietario, UNO) puede tener muchos hijos (registro subordinado, MUCHOS) pero un hijo sólo puede tener un padre.

El árbol que se forma puede tener varios niveles, lo que significa que un hijo en un cierto nivel puede a su vez ser padre de otros hijos de nivel menor, pero en todos los niveles debe cumplirse que mientras cada padre puede tener varios hijos, cada hijo puede tener sólo un padre.

Page 11: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 11

Modelos Jerárquicos

Todas las interrelaciones de los datos se basan en jerarquías. Los archivos se conectan entre símediante punteros físicos (dirección física que indica donde puede encontrarse un registro sobre el disco) o campos añadidos a los registros individuales.

Por ejemplo si tenemos un archivo de facturas (FACTURA) y otro de líneas de factura (LINEA_F), el padre (registro propietario) sería los datos de la factura y los hijos (registros subordinados) las líneas de la factura.

Page 12: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 12

Modelos Jerárquicos

En organizaciones jerárquicas se hace difícil expresar las relaciones en la cuales un hijo se relaciona con varios padres.

Como contrapartida cuando las relaciones son jerárquicas, resulta fácil de implementar, modificar y mantener la base de datos.

Page 13: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 13

Modelos Jerárquicos

Ejemplo Distribuidora de Productos:CLIENTE

NombreDirección

PRODUCTO

#ProductoDescripciónCantidad

ORDEN

#OrdenFecha

PROVEEDOR

#Proveedor, Ranking, Precio, Tpo-Entrega

Page 14: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 14

Modelos Jerárquicos

Una restricción importante de este modelo es la existencia de un padre único para cada entidad.

En el ejemplo anterior, las entidades ORDEN y PRODUCTO tienen una asociación 1:M, siendo que un producto puede estar asociado con muchas órdenes, es decir, la asociación real es M:N, pero éstas no se pueden implementar en una jerarquía.

La restricción anterior genera una alta redundancia dentro de este modelo, donde aparecen ocurrencias jerárquicas de la base de datos que corresponderían al modelo entregado en la figura anterior para la Distribuidora de Productos.

Page 15: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 15

Modelos Jerárquicos

Ejemplo Distribuidora de Productos:

Cliente A

Orden A.1 Orden A.2

Cliente B

Orden B.1

Producto X

Producto X

Producto Z

Producto Y

Prov. Q Prov. Q Prov. PProv. P Prov. Q Prov. Q Prov. R

Page 16: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 16

Modelos Jerárquicos

Este modelo presenta variados problemas al realizar mantención a la base de datos.

Al ingresar un nuevo PRODUCTO, es necesario tener un CLIENTE y una ORDEN asociada; Al eliminar un PRODUCTO se eliminan todos los PROVEEDORES asociados, pudiéndose perder información relevante; Al modificar algún atributo, por ejemplo cambiar el Ranking de un PROVEEDOR es necesario hacerlo en todas las ocurrencias donde esté el PROVEEDOR, lo cual es lento y puede producir inconsistencias si es que no se actualizan todas las ocurrencias.

Page 17: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 17

Modelos Jerárquicos

Las limitaciones al modelo radica en que no todas las interrelaciones se pueden representar en una estructura jerárquica.

Se intentan solucionar desarrollando los sistemas de base de datos en red.

Page 18: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 18

Modelos de Red

Este modelo representa a los datos como un conjunto (set) de tipos de registros y asociaciones entre ellos.

Se utiliza como estructura de datos un grafo, por lo que un tipo de registro puede tener numerosas asociaciones con otros tipos de registros, del tipo 1:1, 1:M y M:N.

Resulta más flexible que el jerárquico.

Es una extensión del modelo jerárquico, en la que un hijo puede tener más de un padre. Este modelo es menos restrictivo que el jerárquico y los sistemas de base de datos utilizan punteros físicos también.

La desventaja es que en este tipo de modelo de datos su estructura comienza a tomar apariencia de “tela de araña” con apuntadores que salen en todas direcciones.

Page 19: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 19

Modelos de Red

A principios de los 70 se desarrollaron y se comercializaron varios SGBD en red y este modelo de datos se normalizó como el modelo CODASYL.

Ejemplos de bases de datos en red son ADABAS, TOTAL, IMAGE,...

Page 20: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 20

Modelos de Red

Ejemplo Distribuidora de Productos:CLIENTE

NombreDirección

PRODUCTO

#ProductoDescripciónCantidad

ORDEN

#OrdenFecha

PROVEEDOR

#Proveedor, Ranking, Precio, Tpo-Entrega

LINEA-ORDEN

Cantidad

PROD-PROV

PrecioTpo-Entrega

Page 21: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 21

Modelos de Red

En este modelo es posible representar asociaciones M:N, para ello es necesario transformarlas en dos asociaciones 1:M unidas a través de un tipo de registro de intersección denominado NUB. Con esto se elimina la redundancia generada en el modelo jerárquico.

Los problemas de insertar, borrar y modificar la base de datos planteados en el modelo jerárquico, se simplifican enormemente.

Solo hay que tener cuidado al borrar registros que intervienen en asociaciones M:N, pues es posible que se creen inconsistencias si es que no se eliminan los registros NUB involucrados.

Page 22: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 22

Modelos Orientados a Objetos

Define una base de datos en términos de objetos, propiedades y sus operaciones.

Los objetos con una misma estructura y comportamiento pertenecen a una misma clase, y las clases se organizan en jerarquías.

Los modelos relacionales han extendido sus modelos para incorporar conceptos orientados a objetos.

Page 23: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 23

Modelo de Datos Relacional

En 1970, Edgard F. Cood publica un artículo en el que argumenta que los datos deberían relacionarse mediante interrelaciones naturales, lógicas e inherentes a los datos, más que mediante punteros físicos.

Cood propone así, un modelo simple de datos en el que todos ellos se representarían en tablas constituidas por filas y columnas.

A estas tablas se les dio el nombre de relaciones y por eso se denominó al modelo relacional.

Page 24: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 24

Modelo de Datos Relacional

Cood también propuso dos lenguajes para manipular los datos en las tablas:

El álgebra relacionalEl cálculo relacional.

La manipulación lógica de los datos también hace factible la creación de lenguajes de consulta más accesibles para un usuario no especialista en programación.

Actualmente los sistemas relacionales son un estándar en el mercado, especialmente en operaciones comerciales.

Ejemplos de sistemas de bases de datos relacionales son: INFORMIX, DB2, ORACLE, SYBASE, DBASE, FOXPRO, INGRES, MYSQL, MS SQL SERVER, ...

Page 25: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 25

Modelo de Datos Relacional: Principales Características

Resulta más eficiente que el modelo jerárquico y de red.

La Base de Datos es representada como una colección de tablas (relaciones), las que se pueden almacenar individualmente en forma de archivo.

Cualquier línea determinada de relación se le llama tupla.

Cada columna de la relación representa un dominio diferente.

Page 26: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 26

Modelo de Datos RelacionalEl modelo relacional es totalmente diferente a los modelos jerárquico y de red, no sólo en su arquitectura sino que también en los siguientes puntos:

Independencia en la implementación:No es necesario conocer como se representan físicamente los datos (no se necesita trabajar con punteros, listas enlazadas, grafos, etc.)

Terminología: El modelo relacional tiene su propia terminología.

Claves lógicas como punteros:Usa claves primarias y foráneas para representar las asociaciones entre dos archivos. No obstante, debido a la independencia en la implementación la base de datos física puede usar punteros u otros métodos, pero éstos son transparentes para el usuario.

Teoría de Normalización: Esta teoría fue desarrollada en el contexto del modelo relacional, pero hoy en día sus propiedades han sido extendidas a otros modelos. Consiste en un conjunto de propiedades que deben cumplir los datos para lograr un diseño de base de datos libre de dependencias y con el mínimo de redundancia.

Lenguaje de programación comprensivo: Existen lenguajes simples para accesar las bases de datos relacionales, son lenguajes que permiten manipular datos como grupos o archivos, en vez de un registro a la vez como los lenguajes procedurales tradicionales.

Page 27: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 27

Modelo de Datos Relacional: Resumen Histórico

Desarrollo del modelo relacional (1970-1990):(1970-78) Desarrollo del modelo teórico

Definición del modelo (Codd 1970-72)Álgebra y Cálculo relacionalPrimeros problemas de diseño

(1975- 1980) Desarrollo de los primeros SGBD relacionales

IBM (System R)SQL (1975)DB2, SQL/DS, OS/2, SQL/200 etc..Proyecto INGRES

Page 28: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 28

Modelo de Datos Relacional: Resumen Histórico

(1980-1990) Desarrollo de los grandes sistemas relacionalesSQL comercialDesarrollo de generadores de aplicacionesSistemas distribuidosEstructuras cliente/servidor (lenguajes visuales)Modelo relacional orientado a objetos

Page 29: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 29

Modelo de Datos Relacional: Resumen Histórico

Nuevos modelos de representación de información (1980-1990):Algunos problemas en el modelo relacional

La semántica de los items complejos se recoge malConexión de los datos existentes en la base de datos con información “inteligente”

Representación unificada de reglas y datosBases de conocimientoSistemas Inteligentes de Información

Page 30: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 30

Modelo de Datos Relacional: Resumen Histórico

Nuevos modelos de representación de información (1980-1990):Algunos problemas en el modelo relacional

Existencia de bancos de datos con información no estructurada:

Bases de datos documentalesSistemas de recuperación de información

Los nuevos problemas (1990-2000): Nuevas Aplicaciones1.- Tratamiento de grandes volúmenes de datos de imágenes2.- Bases de datos para sistemas de ayuda al diseño3.- La obtención de información elaborada4.- Bases de datos que soporten información compleja.

Page 31: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 31

Modelo de Datos Relacional: Resumen Histórico

Nuevos Desafíos:1.- Tecnología de bases de datos multimedia2.- Problemas de bases de datos heterogéneas3.- Gestión de consultas expresadas de forma imprecisa4.- Inicio de nuevas formas de acceder a la información (Minería de Datos)

Page 32: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 32

Modelo Relacional

Creado por Cood representa los datos en forma de tablas o relaciones, está basado en fundamentos matemáticos lo que le da solidez a las operaciones que se realizan sobre las relaciones.

Comprende tres componente:Estructura de los datos: Los datos son organizados en relaciones.La Manipulación de los datos: Lenguaje poderoso como SQL son usados para manipular los datos almacenados en las relaciones.La Integridad de los datos: Cuenta con facilidades que mantienen la integridad de los datos cuando estos son manipulados.

Page 33: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 33

Propiedades de las Relaciones

1. La intersección de cada fila y columna es atómico lo que implica que no pueden existir grupos repetidos.

2. Las columnas deben tener el mismo dominio.

3. Cada fila es única y esto se garantiza por la existencia de la clave primaria, la cual es única para todas las ocurrencias.

4. Cada columna tiene un nombre distinto y el orden de las columnas no tiene importancia.

5. El orden de las filas es irrelevante.

6. Las relaciones deben ser bien estructuradas lo que significa que contiene redundancia mínima y se puede realizar inserción, modificación y eliminación sin generar errores o inconsistencias, también llamadas “anomalías”.

Page 34: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 34

Modelo Relacional

Se define una tupla como el conjunto de valores que componen una fila de una relación.

Una tupla es equivalente a la ocurrencia de un registro dentro de un archivo. Una n-tupla, es una tupla compuesta de n dominios, siendo n el grado de la relación.

Un dominio es el conjunto de valores posibles para una columna. La cardinalidad se define como el número de tuplas de una relación.

Una base de datos relacional, está formada entonces por un conjunto de relaciones o tablas, las cuales están asociadas entre sí (relationship es el término usado en inglés para definir una asociación o relacionamiento) a través de columnas que tienen en común.

Page 35: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 35

Modelo Relacional

Ejemplo de Relacional: Se trata de una relación de grado tres y cardinalidad cuatro.

Relación INSUMO

Para representar una relación en una forma más resumida se utiliza la siguiente notación :

INSUMOS (CODIGO-INS, NOMBRE-INS, MARCA)

ParkerLápizI4

XeroxPapelI3

BICLápizI2

PhillipsAmpolletaI1

MARCANOMBRE-INSCODIGO-INS

DominiosNombre de la Relación

Page 36: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 36

Modelo Relacional

Cada tupla está compuesta de uno o más dominios.

Para entender mejor el concepto de dominio, analicemos el dominio MARCA de la relación INSUMO, éste corresponde al conjunto de todas las marcas válidas, incluidas aquellas que actualmente no aparecen como valores de datos en la relación INSUMO.

Es importante diferenciar un dominio de una columna o atributo.

Un atributo representa el uso de un dominio dentro de una relación.

Page 37: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 37

Modelo Relacional

Relación Producto-Ensamblado

El producto P1 está formado por dos unidades del producto P10 y por una unidad del producto P20, el producto P5 por cuatro unidades de P10, etc. En este caso, hay tres atributos (PRODUCTO, COMPONENTE y CANTIDAD) y dos dominios (CODIGO-PRODUCTO y CANT)

6P20P9

5P40P8

3P38P8

1P30P8

4P10P5

1P20P1

2P10P1

CantidadComponenteProducto

Page 38: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 38

Modelo Relacional

Cada tupla en una relación es única, y debe ser posible definir una clave primaria o identificador que permita asegurar esta unicidad.

Por ejemplo, en la relación INSUMO la clave primaria puede ser el atributo CODIGO-INS. Es posible que la clave primaria sea una combinación de atributos.

El proceso de manipular una base de datos relacional es bastante más simple que en los dos modelos anteriores. Al representarse los datos de una sola forma se requiere un solo operador para cada función básica (leer, insertar, borrar y modificar).

Page 39: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 39

Modelo Relacional

Suponer un Sistema de Compras que maneja la información sobre la adquisición de insumos de una empresa a diferentes proveedores, a través de tres tablas.

Proveedor Insumo

Orden de Compra

QuillotaZamoraP3

ValparaísoMartínezP2

ViñaAlvarezP1

CiudadNombre-ProvCodigo-Prov

ParkerLápizI4

XeroxPapelI3

BicLápizI2

PhillipsAmpolletaI1

MarcaNombre-InsCodigo-Ins

200I2P3

400I2P2

300I1P2

400I3P1

200I2P1

300I1P1

CANTIDADCODIGO-INSCODIGO-PROV

Page 40: Base de Datos - zeus.inf.ucv.clzeus.inf.ucv.cl/~jrubio/docs/ICI 344/Capitulo IV Parte 1.pdf · Base de Datos 20 Modelos de Red Ejemplo Distribuidora de ... Define una base de datos

Base de Datos 40

Modelo Relacional

Es posible hacer un paralelo entre la terminología usada en el modelo relacional, con la utilizada en archivos tradicionales (pero dejando en claro que la teoría relacional es mucho más precisa en su definición):

CampoDominio (Columna)

RegistroTupla (Fila)

ArchivoRelación (Tabla)

Archivos TradicionalesModelo Relacional