Professional Documents
Culture Documents
3
1. Organizacin de los Datos.......................................................................................................................... 3
1.1. Tipos de organizacin de datos .......................................................................................................... 3
1.2. Tipos de acceso a los datos................................................................................................................. 4
2. Sistema tradicional de archivos .................................................................................................................. 5
3. Sistema de Bases de Datos ......................................................................................................................... 6
4. Modelos de Base de Datos ........................................................................................................................ 9
4.1. Modelo jerrquico de datos ................................................................................................................. 9
4.2 Modelo de datos en red ...................................................................................................................... 10
4.3. Modelo relacional de datos............................................................................................................... 11
4.4. Ventajas y desventajas de los tres modelos de bases de datos ........................................................ 13
5. Modelos de Datos Conceptuales (Semnticos) ........................................................................................ 15
5.1. Elementos del Modelo Entidad-Relacin ......................................................................................... 15
5.2. Diagramas Entidad - Relacionamiento (objetos de datos y sus relaciones) ..................................... 16
5.3. Modelo de Datos .............................................................................................................................. 17
Fases de la Metodologa para la estructuracin de los datos ................................................................ 17
5.4. Definicin de Conceptos del Modelo Entidad Relacionamiento....................................................... 18
Entidades .............................................................................................................................................. 18
Clasificacin de las Entidades. ............................................................................................................. 19
Atributos............................................................................................................................................... 19
Identificador ......................................................................................................................................... 20
Atributos de Multivalor ........................................................................................................................ 21
5.5. Relacionamientos (Asociacin)........................................................................................................ 21
Grado de un relacionamiento................................................................................................................ 21
Gerundios ............................................................................................................................................. 23
Conectividad (Cardinalidad) en el relacionamiento ............................................................................. 23
Cardinalidad Mnima y Mxima........................................................................................................... 23
Dependencia de Existencia................................................................................................................... 24
Comentarios sobre el Relacionamiento ................................................................................................ 24
5.6 Modelamiento de atributos multivalor ............................................................................................... 26
5.7. Datos Dependientes del Tiempo....................................................................................................... 27
5.8. Generalizacin - Especializacin ...................................................................................................... 28
Subtipos Y Supertipos .......................................................................................................................... 28
Tema VI: Enfoque de Bases de Datos en el Diseo de Sistemas ..................................................................... 30
1. Estrategia de Diseo de la Base de Datos ................................................................................................ 30
1.1. Diagrama de las fases del enfoque de bases de datos....................................................................... 30
FASE I: Generacin del Modelo Conceptual ........................................................................................... 30
FASE II: Generacin del Modelo Conceptual Cannico ......................................................................... 31
Proceso de Normalizacin................................................................................................................ 31
Primera Forma Normal (1 FN):................................................................................................... 31
Segunda forma normal (2 FN)..................................................................................................... 32
Tercera forma normal (3 FN) ....................................................................................................... 32
Relaciones muchos a muchos ....................................................................................................... 32
Eliminacin de Relaciones Redundantes (o loop) ........................................................................ 33
Relaciones Redundantes................................................................................................................... 33
Herencia........................................................................................................................................ 35
Fase III: Modelo de Procesos de Datos .................................................................................................... 35
2. Modelo Relacional .................................................................................................................................. 40
2.1. Tablas ................................................................................................................................................ 40
2.2. Relacin............................................................................................................................................. 40
2.3. Tablas relacionales ............................................................................................................................ 40
2.4. Claves ................................................................................................................................................ 40
2.5. Operaciones sobre Tablas.................................................................................................................. 40
Profesor. Oscar Saavedra Rodrguez 1
Seleccin. ............................................................................................................................................. 40
Proyeccin. ........................................................................................................................................... 40
Diferencia. ............................................................................................................................................ 40
Producto cartesiano. ............................................................................................................................. 41
Join. ...................................................................................................................................................... 41
3.1. Reglas De Transformacin ................................................................................................................ 42
Tema VII: Lenguaje de programacin SQL..................................................................................................... 46
1. Ejemplo de comandos DDL. ................................................................................................................... 48
2. Ejemplo de comandos DML.................................................................................................................... 52
2.1. INSERT............................................................................................................................................ 52
Insercin de un solo registro. ............................................................................................................... 52
Insercin de un solo registro, omitiendo nombres de campos.............................................................. 53
Insercin de un solo registro. ............................................................................................................... 53
2.2. UPDATE (ACTUALIZAR) .............................................................................................................. 54
Modificacin de un solo registro.......................................................................................................... 54
Modificacin de varios registros. ......................................................................................................... 54
2.3. DELETE (ELIMINAR).................................................................................................................... 54
Eliminacin de un solo registro............................................................................................................ 55
Eliminacin de varios registros. ........................................................................................................... 55
3. Ejemplo de comandos DML.................................................................................................................... 56
3. SELECT [ ALL | DISTINCT ] select-list................................................................... 56
1. Tecnologas Web para el Desarrollo de Sistemas de Informacin ........................................................... 68
1.1. Lenguaje de Hipertexto Basado en Marcas (HTML) ....................................................................... 68
1.1.1. Pginas Estticas y Dinmicas.................................................................................................. 69
1.1.2. Herramientas para la Construccin de Pginas Web ................................................................ 69
1.2. Lenguaje de Marcas Extensibles (XML).......................................................................................... 71
1.3. Herramientas para Pginas Web Personales (PHP).......................................................................... 73
1.4. MySQL............................................................................................................................................. 74
1.5. Java................................................................................................................................................... 74
2. Aplicacin de UML en el Modelado de un Sistema de Informacin de Gestin del Recurso Humano... 76
2.1. Contexto de la Situacin................................................................................................................... 76
2.2. Modelo de Proceso de Negocios ...................................................................................................... 77
En un sistema computacional se organizan los datos con una jerarqua que se inicia con
los bits y los bytes y avanza hacia los campos, registros, archivos y las bases de datos.
Mtodo de acceso secuencial indexado (MASI): aun cuando los registros pueden
ser almacenados secuencialmente en dispositivos de acceso directo, los registros
individuales pueden ser accesados directamente mediante el mtodo MASI. Este
mtodo de acceso descansa en un ndice de campos claves para localizar los
registros individuales. Un ndice es una tabla o listado que relaciona las claves de
los registros con las ubicaciones fsicas en los archivos de acceso directo. Es
semejante a un ndice de un libro, ya que enlista el campo clave de cada registro y
donde se ubica fsicamente tal registro en el almacenamiento para facilitar su
localizacin. Cualquier registro especfico puede ser localizado directamente
usando el campo llave para encontrar la direccin de su almacenamiento en el
ndice. El MASI se utiliza en aplicaciones que requieren de un procesamiento
secuencial de gran nmero de sus registros, pero que ocasionalmente necesitan
acceso directo de los registros individuales.
A medida que este proceso prosigue por 5 o 10 aos, la empresa queda atada por nudos
de su propia creacin. La institucin queda amarrada por cientos de programas y
aplicaciones, en donde nadie sabe qu hacen, qu datos usan, ni quin los usa. No existe
un listado central de los archivos de datos, elementos de datos o definiciones de los
datos. La institucin obtiene la misma informacin en demasiados documentos. Los
problemas resultantes son redundancia de datos, dependencia de datos por parte de los
programas, inflexibilidad, inconsistencia en los datos, seguridad muy pobre en los
programas e incapacidad para compartir datos entre las distintas aplicaciones.
Una Base de Datos es una coleccin de datos organizada para dar servicio a muchas
aplicaciones al mismo tiempo al combinar los datos de manera que aparezcan estar
en una sola ubicacin. En lugar de separar los datos en archivos separados para cada
aplicacin, los datos son almacenados en una sola ubicacin.
Sistema de Gestin de Bases de Datos (SGBD) o Data Base Management System
consiste en un conjunto de programas, procedimientos y lenguajes que nos
proporcionan las herramientas necesarias para trabajar con una base de datos. Los
Sistemas de gestin de base de datos son un tipo de software muy especfico,
dedicado a servir de interfaz entre la Base de Datos, el usuario y las Aplicaciones que
la utilizan. Incorporar una serie de funciones que nos permita definir los registros, sus
campos, sus relaciones, insertar, suprimir, modificar y consultar los datos.
Un SGBD es sencillamente el software que permite que una institucin centralice sus
datos, los administre eficientemente, y proporcione acceso a los datos almacenados
mediante programas de aplicacin. Tiene los siguientes elementos: un lenguaje de
definicin de datos; un lenguaje de manejo de datos y un diccionario de datos.
Abstraccin de la informacin. Los SGBD ahorran a los usuarios detalles acerca del
almacenamiento fsico de los datos. Da lo mismo si una base de datos ocupa uno o cientos de
archivos, este hecho se hace transparente al usuario. As, se definen varios niveles de abstraccin.
Redundancia mnima. Un buen diseo de una base de datos lograr evitar la aparicin de
informacin repetida o redundante. De entrada, lo ideal es lograr una redundancia nula; no obstante,
en algunos casos la complejidad de los clculos hace necesaria la aparicin de redundancias.
Consistencia. En aquellos casos en los que no se ha logrado esta redundancia nula, ser necesario
vigilar que aquella informacin que aparece repetida se actualice de forma coherente, es decir, que
todos los datos repetidos se actualicen de forma simultnea.
Seguridad. La informacin almacenada en una base de datos puede llegar a tener un gran valor. Los
SGBD deben garantizar que esta informacin se encuentra asegurada frente a usuarios
malintencionados, que intenten leer informacin privilegiada; frente a ataques que deseen manipular
o destruir la informacin; o simplemente ante las torpezas de algn usuario autorizado pero
Profesor. Oscar Saavedra Rodrguez 7
despistado. Normalmente, los SGBD disponen de un complejo sistema de permisos a usuarios y
grupos de usuarios, que permiten otorgar diversas categoras de permisos.
Integridad. Se trata de adoptar las medidas necesarias para garantizar la validez de los datos
almacenados. Es decir, se trata de proteger los datos ante fallos de hardware, datos introducidos por
usuarios descuidados, o cualquier otra circunstancia capaz de corromper la informacin almacenada.
Respaldo y recuperacin. Los SGBD deben proporcionar una forma eficiente de realizar copias de
seguridad de la informacin almacenada en ellos, y de restaurar a partir de estas copias los datos que
se hayan podido perder.
Tiempo de respuesta. Lgicamente, es deseable minimizar el tiempo que el SGBD tarda en darnos
la informacin solicitada y en almacenar los cambios realizados.
Ventajas de un DBMS:
Facilidad de manejo de grandes volmenes de informacin.
Gran velocidad en muy poco tiempo.
Independencia del tratamiento de informacin.
Seguridad de la informacin (acceso a usuarios autorizados), proteccin de informacin, de
modificaciones, inclusiones, consulta.
No hay duplicidad de informacin, comprobacin de informacin en el momento de introducir la
misma.
Integridad referencial el terminar los registros.
Inconvenientes de un DBMS:
El costo de actualizacin del hardware y software son muy elevados.
Costo (salario) del administrador de la base de datos es costoso.
El mal diseo de esta puede originar problemas a futuro.
Un mal adiestramiento a los usuarios puede originar problemas a futuro.
Si no se encuentra un manual del sistema no se podrn hacer relaciones con facilidad.
Generan campos vacos en exceso.
El mal diseo de seguridad genera problemas en esta.
SGBD libres
PostgreSQL (http://www.postgresql.org Postgresql) Licencia BSD
MySQL Licencia Dual, depende el uso.
Firebird basada en la versin 6 de Interbase, Initial Developer's PUBLIC LICENSE Version 1.0.
SQLite (htto://www.sqlite.org SQLite) Licencia Dominio Pblico
DB2 Express-C (http://www.ibm.com/ar/businesscenter/catalogo/db2_express-c_phtml)
Apache Derby (http://db.apache.or/derby)
SGBD gratuitos
Microsoft SQL Server Compact Edition
Sybase ASE Express Edition para Linux (Edicin gratuita para Linux)
Algunos DBMS Comerciales:
Profesor. Oscar Saavedra Rodrguez 8
Advantage Database
dBase
FileMaker
Fox Pro
IBM DB2 Universal Database (DB2 UDB)
IBM Informix
Interbase de CodeGear, filial de Borland
MAGIC
Microsoft Access
Microsoft SQL Server
NexusDB
Open Access
Oracle
Paradox
PervasiveSQL
Progress (DBMS)
Sybase ASE
Sybase ASA
Sybase IQ
WindowBase
Existen distintos modos de organizar la informacin y representar las relaciones entre los
datos en una base de datos. Los SGBD convencionales usan uno de los tres modelos
lgicos de datos para hacer el seguimiento de las entidades, atributos y relaciones. Los
tres modelos lgicos principales de bases de datos son el jerrquico, de redes y el
relacional. Cada modelo tiene ciertas ventajas de procesamiento y tambin ciertas
ventajas de negocios.
Una clase de modelo lgico de bases de datos que tiene una estructura arborescente. Un
registro se subdivide en segmentos que se interconectan en relaciones padre-hijo de uno
a muchos.
Los primeros SABD eran jerrquicos. El modelo jerrquico de datos presenta los datos a
los usuarios en una estructura arborescente. El SABD ms comn de tipo jerrquico es el
IMS de IBM (Information Management System). Dentro de cada registro, los elementos
de datos quedan organizados en partes llamados segmentos. Para el usuario cada
segmento se ve como un organigrama con el segmento de nivel superior llamado raz. Un
segmento superior se conecta de manera lgica con un segmento inferior en una relacin
de tipo padre-hijo. Un segmento padre puede tener ms de un hijo, pero un hijo slo
puede tener un padre.
La siguiente figura muestra una estructura jerrquica semejante a la que se emplea en los
sistemas de reservaciones de las lneas areas. El segmento raz es Origen, que
contiene informacin sobre los aeropuertos desde donde se originan los vuelos. El primer
hijo es Destino y contiene informacin sobre hacia dnde van los vuelos. El segundo
Profesor. Oscar Saavedra Rodrguez 9
hijo es Fecha (las lneas areas aceptan en general reservaciones con un ao de
anticipacin). El tercer hijo es nmero de vuelo porque en un da cualquiera puede
haber diversos vuelos a un solo destino. El cuarto hijo es Listas de pasajeros, que
contiene informacin sobre el pasajero (como nombre, telfono local, cundo se hizo la
reservacin, direccin de facturacin, forma de pago y, en algunos casos, nmero de
asiento).
Detrs de la imagen lgica de los datos hay una cantidad de enlaces fsicos y dispositivos
para ligar la informacin en un todo lgico. En los SABD lgicos, los datos estn
enlazados fsicamente mediante una serie de sealadores que forman cadenas de
segmentos de datos relacionados. Los sealadores son elementos de datos asociados a
los extremos de los segmentos de registros sobre el disco que dirige el sistema hacia los
registros relacionados. En el ejemplo, si la ruta fuera LGA (El aeropuerto La Guardia de
Nueva York), al final del segmento Origen se tendran una serie de sealadores hacia
todas los posibles destinos. A su vez, al final del segmento Destino se encuentran
sealadores hacia las fechas cuando la lnea rea vuela a este destino.
Como existen muchos aeropuertos desde donde se originan vuelos, sera conveniente
que el sistema pueda encontrar rpidamente el segmento raz adecuado, el aeropuerto de
origen. Mejor que leer cada segmento de datos (de los cuales hay millones) uno a la vez
hasta que el adecuado (el aeropuerto raz de origen) se encuentre, todos los aeropuertos
de origen pueden ser sacados en un ndice que contenga una lista y su localizacin
precisa en un disco. Una vez que este segmento raz es identificado, los sealadores
tomarn el mando para guiar la bsqueda de la base de datos.
97PS087 A lic e M e e ra B h a w a n A2
97PS086 A n ith a M e e ra B h a w a n A1
97PS085 Jose A2
A1 In g e n ie ra A 2 In g e n ie ra A1 In g e n ie ra A 2 In g e n ie ra
C o m e rc ia l C iv il In d u s tria l C o m e rc ia l C iv il In d u s ria l
El modelo de datos en red es una variacin del modelo de datos jerrquico. De hecho, las
bases pueden traducirse de jerrquicas a en redes y viceversa, con el objeto de optimizar
la velocidad y la conveniencia del procesamiento. Mientras que las estructuras describen
En una relacin de muchos a muchos en la que los SABD en redes tienen un desempeo
excelente es la relacin entre estudiantes y cursos (ver figura siguiente). Existen muchos
cursos en una universidad y muchos estudiantes se inscriben en muchos cursos.
Los datos de la figura anterior podran haber sido jerrquicamente estructurados. Pero
esto hubiera significado una gran redundancia y hubiera hecho ms lenta la respuesta a
ciertos tipos de solicitudes de informacin; el mismo estudiante hubiera aparecido en el
disco de cada curso que tomara en vez de en uno solo. Las estructuras en red reducen la
redundancia y, en ciertas situaciones (en las que existen relaciones muchos a muchos),
responden de manera ms rpida. Sin embargo, existe un precio por esta reduccin en
cuanto a redundancia e incremento de velocidad. El nmero de sealadores en las
estructuras de la red se incrementa rpidamente, haciendo el mantenimiento y la
operacin ms caros.
Tabla: Disciplina
En una base de datos relacional, se usan tres operaciones bsicas para desarrollar
conjuntos tiles de datos, seleccionar, proyectar y unir. La operacin seleccionar crea un
subconjunto que contiene todos los registros en el archivo que cumplen con un
determinado criterio. Seleccionar crea, en otras palabras, un subconjunto de renglones
que cumplen con determinados criterios. En el ejemplo, se desea seleccionar registros
(renglones) de la tabla de partes en donde el nmero de parte sea igual a 137 152.
La operacin proyecto crea un subconjunto que consiste en columnas en una tabla, que
permiten al usuario crear nuevas tablas que contengan nada ms la informacin que se
requiera. En el ejemplo, se desea extraer de la nueva tabla de resultados slo las
columnas siguientes: NUMERO-PARTE, NUMERO-PROVEEDOR, NOMBRE-PROVEEDOR y DIRECCION-
PROVEEDOR.
Las estructuras jerrquica y de red tienen diversas desventajas. Todas las rutas de
acceso, directorios e ndices deben ser especificados por adelantado. Una vez
especificados, no se pueden cambiar fcilmente sin un esfuerzo importante de
programacin. Por tanto, estos diseos tienen poca flexibilidad. Por ejemplo, si se llama
a una lnea area y se dice: Mis padres me dieron un boleto de avin para un lugar
extraordinario de vacaciones, que sale del aeropuerto La Guardia de Nueva York, pero no
me dijeron exactamente dnde y cundo. Adnde me mandan?. Se podra descubrir
que no hay manera de que el sistema pueda encontrar la respuesta en un tiempo
razonable. Esta trayectoria en los datos no se especific por adelantado. O si el FBI
llamara a una de las lneas principales y le preguntara sobre los movimientos de los
ltimos seis meses de un terrorista sospechoso que viajara bajo cierto nombre supuesto,
la lnea area podra responder luego de varios meses de esfuerzos de programacin (los
registros se mantienen durante un perodo de cinco aos en cintas de respaldo).
La fuerza de los SABD relacionales es la gran flexibilidad en cuanto a las consultas ad-
hoc, el poder de mezclar la informacin de fuentes distintas, sencillez en el diseo y
mantenimiento y capacidad de aadir nuevos datos a registros sin necesidad de perturbar
los programas y las aplicaciones ya existentes. La debilidad de los SABD relacionales es
su baja eficiencia relativa en el procesamiento. Estos sistemas son algo ms lentos
porque en general requieren de muchos accesos a los datos almacenados en disco para
llevar a cabo los comandos de seleccin, fusin y proyeccin. La seleccin de un nmero
entre millones, un registro a la vez, puede tomar gran cantidad de tiempo. Por supuesto,
la base de datos puede ser indexada y afinada para acelerar las consultas previamente
especificadas. Los sistemas relacionales no tienen el gran nmero de sealadores que
tienen los sistemas jerrquicos.
Las grandes bases de datos relacionales pueden disearse para tener alguna
redundancia en cuanto a los datos, con objeto de que la recuperacin sea ms eficiente.
El mismo elemento de datos puede almacenarse en distintas tablas. La actualizacin de
los elementos redundantes de datos no es una actividad automtica en muchos SABD
relacionales. Por ejemplo, el cambio del cambio estatus del empleado en una tabla no lo
Profesor. Oscar Saavedra Rodrguez 13
habr de cambiar en todas las tablas. Arreglos especiales se requieren para asegurar
que todas las copias del mismo elemento de datos sean actualizadas conjuntamente.
Se trata de una tcnica de diseo de base de datos grfica, que nos muestra informacin
relativa a los datos y la relacin existente entre ellos. Sus caractersticas principales son:
Reflejan tan slo la existencia de los datos sin expresar lo que se hace con ellos. Es
independiente de las bases de datos y de los sistemas operativos (por lo que puede ser
implementado en cualquier base de datos). Est abierto a la evolucin del sistema.
Incluye todos los datos que se estudian sin tener en cuenta las aplicaciones que se van a
tratar. No tienen en cuenta las restricciones de espacio y almacenamiento del sistema.
Entidades
Son objetos concretos o abstractos que presentan inters para el sistema y sobre los que
se recoge informacin que ser representada en un sistema de bases de datos. Por
ejemplo, clientes, proveedores y facturas seran entidades en el entorno de una empresa.
Atributos
Es una unidad bsica e indivisible de informacin acerca de una entidad o una relacin.
Por ejemplo la entidad proveedor tendr los atributos nombre, domicilio, poblacin, CIF.
Dominios
Es el conjunto de valores que puede tomar cada atributo. Por ejemplo el dominio del
atributo poblacin, ser la relacin de todas las poblaciones del mbito de actuacin de
nuestra empresa.
Nombre
Direccin
Edad
Permiso de Conduc
Nmero
Tiene
Marca
Modelo
Nmero de ID
Forma
Color
Es una representacin del mundo real en funcin de los Datos Relevantes a un sistema.
Datos que son necesarios para representar la conducta del SIA.
Modelo Conceptual MC
Est basado en el modelo Entidad-Relacionamiento, de Peter Chen (1976).
ALTERNATIVAS:
a) Hacer un M.C. para un rea funcional especifico, por ejemplo:
Racionalizar la administracin en esa rea.
Se est diseando un S.I. en esa rea.
Integrar los S.I. de apoyo a esa rea.
Administrar la informacin en el rea.
Es as que, al referirse al ER, no se esta hablando de aquel modelo original de Chen, sino
que del nuevo ente propuesto por aquellos autores que juntaron los antiguos y nuevos
conceptos y elementos para conformar el modelo que se presentar.
Los mayores componentes del ER son las entidades, relaciones, y atributos que sern
detallados a continuacin.
Entidades
Se define entidad como una persona, lugar, objeto, evento, o concepto que adopte segn
se requiera en el proceso de modelamiento, por ejemplo:
EMPLEADO
Una instancia es una ocurrencia de una entidad. Una entidad es descrita slo una vez en
una base de datos (esto es conocido como METADATO), en cambio muchas entidades
pueden ser. Representadas por los registros de una base de datos. Por ejemplo:
Entidad: EMPLEADOS
Atributos: RUT
NOMBRE
DIRECCIN
Instancia de EMPLEADO
10.220.712-2
Maxwell, Jonathan
Avda. Los Aromos #876
2. Entidad Regular: Son aquellas que pueden ser identificadas por sus atributos
Entidad Dbil: Si es necesaria una relacin para identificar las entidades.
Atributos
Para nombrar un atributo se usa letra mayscula, al igual que con la entidad y su
representacin es por medio del smbolo que se muestra a continuacin. Ej. :
NOMBRE
Adems de una lnea que lo conecte con su respectiva entidad.
Atributos descriptores de una Entidad: Son aquellos datos que caracterizan la Entidad,
por ejemplo, direccin, edad, fecha_nacimiento, etc.
Identificador
Cada entidad debe tener uno o ms atributos que identifiquen nicamente a cada una de
las instancias, para as, poder distinguirlas claramente. De esta manera, se define un
identificador de aquel(los) atributo(s) que identifican exclusivamente a cada instancia de
una entidad. Un ejemplo sera el NUMERO_PROVEEDOR, pues no existe otra instancia que
lo contenga.
Algunas veces una entidad puede tener varios identificadores; por ejemplo la entidad
EMPLEADO puede tener un identificador RUT, y una segundo identificador llamado
NOMBRE y DIRECCIN (suponiendo que no hay dos empleados con el mismo nombre
que vivan en la misma direccin); en todo caso, de varias posibilidades se opta por
determinar a uno de ellos como identificador, as pues se define un identificador como
uno de los posibles identificadores que ha sido seleccionado para distinguir una entidad.
Para dicha seleccin se aconseja los siguientes consejos propuestos por [BRU-92]:
RUT
Surge cuando un atributo puede tener ms de un valor para cada instancia. Su notacin
es por medio del smbolo que se muestra en el ejemplo siguiente:
CARGAS_FAM.
En todo caso, durante etapas posteriores del modelamiento, se normalizan las entidades
eliminando estos atributos colocndolos en entidades separadas o en una relacin.
Un relacionamiento es aquella por medio de la cual se unen los componentes del modelo
ER, o sea, una asociacin entre las instancias de una o ms entidades. Su notacin es
por medio del smbolo presentado en el ejemplo a continuacin:
T IE N E P A C IE N T E
H O S P IT A L
De esta manera se quiere representar la relacin que existe entre la entidad HOSPITAL y
la entidad PACIENTE de esta forma: un Hospital puede tener muchos pacientes.
Los smbolos que acompaan a las lneas de unin en la relacin, sern explicados ms
adelante.
Grado de un relacionamiento
Es el nmero de entidades que participan en una relacin; as por ejemplo, si en una
relacin participan dos entidades, entonces su grado es dos. Las ms comunes
relaciones del ER son:
unaria (grado 1),
binaria (grado 2),
ternaria (grado 3),
n-aria.
Relacin Unaria: tambin llamada relacin recursiva, es una relacin entre las
instancias de una entidad; esta relacin puede ser 1:1, 1:m, m:n ( se lee cantidad es
a cantidad). Por ejemplo, la representacin de esposo(a) puede ser:
ES-ESPOSO
PERSONA
Notar que esta relacin es 1:1, ya que una persona slo puede tener un esposo a la vez
(excluyendo la bigamia).
Y la de jefe:
ES-JEFE
TRABAJADORES
Notar que la relacin es 1:m, ya que un jefe puede tener a su cargo a varios trabajadores.
TIENE PACIENTE
HOSPITAL
Como nota al margen, se destaca que este es el tipo de relacin que con ms frecuencia
se encuentra en el proceso de modelamiento.
Relacin Ternaria: se define como una relacin simultnea entre instancias de tres
entidades tipo, como se explicaba anteriormente. Un ejemplo sera como el que sigue
a continuacin, en el que se muestra la relacin que debe existir ante un pedido de
productos por parte de los clientes y por medio de una orden de compra
P E T IC IO N ORDEN DE
PR O D UC TO
COMPRA
BODEGA
Tambin llamado entidad compuesta, es una relacin entre una entidad y muchas otras
(1:m) que se ha cambiado por una entidad con varias relaciones 1:m asociadas. La
notacin que usa como simbologa es la que se muestra a continuacin.
El gerundio al ser una entidad, posee tambin todas las caractersticas de las entidades.
Este componente es tremendamente til en lo que se refiere a las relaciones ternarias y
binarias (sobre todo en las ternarias).
ES A UNA
ES A MUCHAS
La notacin que representa a estos conceptos, se deben colocar sobre la lnea que une a
las entidades (lnea que representa a la relacin), con uno de los siguientes tres
I MINIMA (EXCLUYENDO EL CERO)
MINIMA (INCLUYENDO EL CERO)
II MAXIMA
smbolos:
En el caso de que la cardinalidad mxima sea un nmero conocido, este se coloca cerca
del smbolo que representa la cardinalidad mxima.
Dependencia de Existencia
Es el concepto que explica el que una instancia perteneciente a una entidad no pueda
existir a menos que exista una instancia en otra entidad previamente definida. En el
ejemplo anterior si la entidad PACIENTE tuviera atributos tales como nro_hospital y
nro_cama, entonces una instancia de esta entidad no podra existir sino existen las
correspondientes instancias en la entidad HOSPITAL.
Este concepto es tambin aplicable a las entidades por lo cual existiran entidades
dependientes de otras. Ocurre frecuentemente que la entidad dependiente de otra no
tiene un identificador o clave candidata. Para esto, la clave primaria de la entidad de la
cual depende es generalmente usada como parte de la clave primaria de ella misma.
A 1 0 B
Relacin
Atributo
Atributo
Entidad Dominio
Tarea Este ejemplo se entiende de manera que una tarea puede ser
desarrollada por un Ingeniero o por un Tcnico pero no por ambos.
desarrollado por
Ingeniero Tcnico
Los atributos de multivalor pueden ser eliminados despus de varios pasos en el diseo
conceptual, como se mencion anteriormente (seccin Atributos de Multivalor). Esto se
logra cuando cada atributo multivalor es convertido a una entidad separada que contenga
sus propios atributos.
GRUPOS REPETIDOS
Un conjunto de dos o ms atributos de multivalor que estn lgicamente relacionados
forman, como consecuencia de lo anterior, un grupo repetido. Por ejemplo para una
instancia de la entidad EMPLEADO se tendr muchos valores para el atributo
nombre_carga, que formarn un grupo repetido.
Ahora bien, estos grupos repetidos pueden ser eliminados y reemplazados por una nueva
entidad que rena a los atributos; y adems, esta nueva entidad es relacionada con la
entidad original de donde se sacaron los atributos. Para el ejemplo anterior se tendra
una nueva entidad llamada CARGAS, que estara relacionada con la entidad EMPLEADO
de la forma Un EMPLEADO tiene muchas CARGAS. La nueva entidad cumple con todas
las normas que rigen a las entidades, como lo es definir un atributo como identificador,
cardinalidad, etc.
Ejemplo:
La entidad FUNCIONARIO tiene los siguientes atributos:
Nombre
Apellido
Rut
Direccin
Telfono
Cargas
Nombres de cargas
Edad de Cargas
Empleos Anteriores
Cargos_desempeados
Duracin del Empleo Anterior
Los contenidos de las bases de datos varan con el tiempo, un ejemplo muy didctico para
explicar esta idea es el registrar la temperatura diaria de un paciente hospitalizado;
conceptualizando esto, se podra crear una entidad llamada TEMPERATURA DIARIA que
contenga los atributos DA, HORA, IDENTIFICACIN_PACIENTE y TEMPERATURA.
Como esto ltimo es un grupo repetido, se puede separar en otra entidad llamada
TEMPERATURA DIARIA POR HORAS que los contenga.
DIA IIDENTIFICACIN_PACIENTE
TIENE TEMPERATURA
TEMPERATURA II DIARIA
DIARIA POR
HORAS
TEMPERATURA HORA
As, el valor del atributo temperatura se le estampa en el tiempo una hora una fecha y el
nombre de un paciente. Una estampa en el tiempo (time stamp) es un valor en el tiempo
(tal como la fecha, la hora y el nombre del paciente) que es asociada a un valor de algn
dato que cambia durante el transcurso de su vida. De esta manera, se puede registrar
cualquier variacin de los datos.
Esta herramienta es muy til cuando se trata con datos variables en el tiempo; y en este
punto fue donde existi la gran debilidad del antiguo modelo ER, del cual se habl en el
punto anterior, pues para datos dependientes del tiempo este modelo era inadecuado.
Esto incentiv el desarrollo de un modelo con conceptos orientados a objetos que
permitiera un mayor manejo de datos variables.
Los humanos al ser seres racionales poseen la habilidad de clasificar los objetos y
generalizar sus propiedades; por ejemplo un gorrin y un cndor son clasificados sin
mayor titubeo bajo el nombre AVE, generalizndolos y obviando el que uno tenga, y
carezcan atributos del otro. Con este ejemplo se introducen los conceptos de
generalizacin y categorizacin.
Subtipos Y Supertipos
Una de las mayores dificultades del modelamiento de datos es reconocer y representar
claramente las entidades que comparten propiedades, pero tienen una o ms distintas
que las distinguen de las otras entidades. Ante situaciones como sta se proponen tres
posibilidades:
Definir una entidad que rena todos los atributos de las otras entidades; aunque
esto tiene la desventaja de que al contener todos los atributos, alguno de ellos
adopte el valor vaco al no ocuparse diariamente.
Definir una entidad separada para cada una de las entidades existentes, y que
adems rena los atributos que son comunes a todas las entidades. Este
mtodo tiene la desventaja de que los usuarios deben ser cuidadosos en elegir
la entidad correcta cuando usen el sistema.
Definir un supertipo que rena los atributos comunes, y subtipos que contengan
cada uno de los restantes atributos. En otras palabras, es dejar las entidades
originales, pero se les extraen los atributos que son comunes entre ellas, y se
renen en una sola entidad llamada supertipo.
Esto hace aparecer los conceptos de supertipo y subtipo. Supertipo es una entidad
genrica que es dividida en subtipos. Un subtipo es un subconjunto de supertipo que
comparten atributos o relaciones distintas desde otros subconjuntos. Cabe mencionar que
tanto los supertipos como los subtipos cumplen con las normas de las entidades; eso si
que el atributo usado como clave primaria (identificador) del supertipo debe coincidir con
la clave primaria de los subtipos.
La relacin entre cada supertipo y subtipo es llamada relacin ISA, su notacin usa el
siguiente smbolo
IS_A
Por ejemplo:
Esta relacin es leda desde el subtipo al supertipo.
La relacin desde el subtipo al supertipo es siempre del tipo obligatorio; es decir,
simblicamente:
II
esta cardinalidad es as, pues una instancia de un subtipo es siempre una instancia de un
supertipo, y por el otro lado de la relacin, el supertipo con respecto al subtipo es
opcionalmente cero o uno.
ISA ISA
PACIENTE PACIENTE
PENSIONADO SIN PENSIN
Cuyo significado es el de relacin exclusiva. Esta relacin involucra que varios subtipos
son mutuamente exclusivos, y que exactamente uno, y no ms de uno, se requiere para
cada una de las instancias del supertipo.
Cuando usar un subtipo es una decisin que depende de cada circunstancia, aunque se
dan dos criterios que pueden ayudar a tomar dicha decisin:
PLANIFICACIN y ANLISIS
REQUERIMIENTOS Y
USUARIO MODELO CORPORATIVO DATOS
MODELO
MODELO ENTIDAD
MODELO RELACIN
INICIAL
INICIALDE
DEDATOS
DATOS EXTENDIDO
PROCESO
PROCESO
NORMALIZACIN
NORMALIZACIN FORMAS
NORMALES
MODELO
MODELOCONCEPTUAL
CONCEPTUAL
CANONICO
CANONICO
REGLAS
REGLAS
DETRANSFORMACIN
DE TRANSFORMACIN
MODELO
MODELO
LGICO
LGICO MODELO
DATOS MODELO
DATOS MODELOFSICO
FSICO RELACIONAL
DE
DEDATOS
DATOS
DAD GENERACIN
LAM GENERACIN
INTERFAZ
BASE
BASE
DATOS
B.D-R
DATOS
PROGRAMA
PROGRAMA
COMPUTACIONAL
COMPUTACIONAL
Dado que el modelo conceptual es una simplificacin, slo contempla las relaciones de
asociacin y las de generalizacin entre las clases, las cuales pasan a convertirse en
entidades. Las entidades, a diferencia de las clases slo conservan la estructura de datos,
perdiendo las operaciones que se definieron en el Diagrama de Clases.
2. - Entidad: Personal
Entidad: Personal - Carga
Persona
Segunda forma normal (2 FN)
Identificar aquellos atributos de la entidad que dependen parcialmente de la
llave de identificacin de sta.
Estos pasan a constituir una nueva entidad
A B C D
2 FN
A B C B D
E F G H
E F G G H
Una Entidad est en 3FN, cuando est en 2FN y cada atributo NO-PRIMO de la
Entidad es dependiente no transitivamente de cada identificador posible de la
Entidad.
Relaciones en que hay entidades evento y sujeto. Por lo tanto, hay relaciones entre
distinto tipo de entidades.
Entidad: Factura
Entidad: Producto
Entidad: Factura - Producto
Relaciones Redundantes
La redundancia que debe eliminarse al buscar el M.D. cannico es: la redundancia
en las relaciones.
Dos relaciones son redundantes, si ambas entregan la misma informacin. Aunque,
una sea relacin directa entre dos entidades, y la otra una relacin indirecta.
Ejemplo: A
C D
va en Puerto/Barco
va al
Barco
Ejemplo: Gerencia
Depto.
Existe solo una relacin M : N que es Carga - Familiar. Las relaciones son de la misma
naturaleza.
Si se ha pasado el 1 Test se revisan una a una las relaciones analizando:
- Si alguna se puede eliminar
- Se elimina la relacin directa, ojal la menos obvia o clara (la que aporte menos)
y si la relacin eliminada en ambos sentidos, es decir, se recorre de arriba hacia
abajo y tambin hacia arriba.
Gerencia
Depto.
PERSONA
FUNCIONARIO
SUBTIPO EXHAUSTIVO
Indican que no existen otros subtipos adicionales a los modelados, ejemplo, para el
Hospital se puede definir dos tipos de funcionarios: con contrato de tiempo completo y con
contrato por horas. Entonces un funcionario puede ser un funcionario contratado tiempo
completo o un funcionario contratado por horas y no existe otro tipo de contrato para los
funcionarios.
SUBTIPOS EXCLUSIVOS
Cada instancia de un supertipo debe ser una instancia de solo uno de los subtipos, es
decir, se trata de un OR exclusivo, por ejemplo, un funcionario puede tener un solo tipo de
contrato.
Clientes
CRut
S-Apellidos CApellidos
CNombre
CZona
Ejemplo:
1. R1.- Recuperar en pantalla los datos de un determinado cliente (se debe
conocer el identificador del cliente)
2. R2.- Recuperar en pantalla los datos de todos los clientes, ordenados por
apellido y que pertenecen a la zona = norte.
3. R3.- Recuperar en pantalla los datos de todos los clientes atendidos por un
vendedor determinado (se debe conocer el identificador del vendedor)
4. R4.- Recuperar en pantalla los datos de las ltimas 10 compras de un cliente
determinado (se debe conocer el identificador del cliente)
5. R5.- .............
CRut VCodigo
Clientes Facturas Vendedores
CRut FNumero VCodigo
FACCLIENTE FACVENDEDOR
S-Apellidos CApellidos
CNombre
CZona
1. Revisar uno por uno los Requerimientos de Informacin y ver si los satisface el
modelo de datos.
Cada vez que se utiliza una relacin o trayectoria de bsqueda, se da un
nombre (y un ordenamiento s es necesario)
Si un requerimiento no se puede satisfacer, hay que volver a la Fase I de la
estrategia de diseo. Para agregar las Entidades o Relacionamientos que
faltan e indicar los puntos de acceso entrada y nuevas trayectorias de
bsqueda.
2. Eliminar las entidades y relacionamientos que quedan sin nombres (no son
utilizadas). Porque son irrelevantes.
3. Reestructurar el modelo para lograr eficiencia.
Profesor. Oscar Saavedra Rodrguez 36
Analizar en detalle los requerimientos de informacin, de acuerdo a: frecuencia
y periodicidad; tiempo de respuesta; nivel de complejidad; volumen; masivo o
selectivo.
Desnormalizar, agregar relaciones redundantes que acerquen las entidades en
trayectorias de bsquedas muy largas. Sacar o incorporar atributos a una
entidad (tercera forma normal).
Ejemplo de desnormalizacin:
Atender
LOOP
CRut VCodigo
Clientes Facturas Vendedores
CRut FNumero VCodigo
FACCLIENTE FACVENDEDOR
S-Apellidos CApellidos
CNombre
CZona
2. Agregar atributos a una entidad. Al dejar los atributos en la entidad, se tiene la ventaja
que al acceder a esta tenemos toda la informacin inmediatamente. Pero no se puede
utilizar como punto de entrada a la estructura.
Para cada proceso computacional se debe establecer un LAM (Mapa de Acceso Lgico) y
una ESP (Especificacin del Proceso).
Una operacin puede ser simple (leer, grabar, calcular, etc.) o compleja (seleccin,
iteracin).
Ejemplos:
1. Proceso bsico, insertar un nuevo cliente en la estructura:
LAM:
Atender
LOOP
CRut Vendedores
Clientes VCodigo
CRut PROFESION
S-Apellidos CApellidos Carga1
CNombre Carga2
CZona
ESP:
Leer VRut
Leer Clientes
Si <Cliente existe> entonces enviar mensaje Cliente existe ir Finsi
Sino
Leer Datos Clientes
Leer VCodigoVendedor
Leer Vendedores
Si <Vendedor Existe> entonces grabar Clientes
Sino enviar mensaje Vendedor no existe
Finsi
Finsi.
ESP:
Leer VRut
Leer Clientes
Si <Cliente existe> entonces
Mientras <Clientes.CRut = Facturas.RutCliente AND Conta <= 10> Hacer
Leer Facturas
Incrementar Conta
Profesor. Oscar Saavedra Rodrguez 38
Presentar en Pantalla Datos Cliente y Facturas
Finmientras
Sino enviar mensaje Cliente no existe
Finsi
Historia Ventas
Monto Vendido
Ao
Mes
2.1. Tablas
Es la forma de estructurar los datos en filas o registros y columnas o atributos.
2.2. Relacin
Es la asociacin que se efecta entre entidades. Por ejemplo la relacin entre las
entidades facturas emitidas y clientes.
2.3. Tablas relacionales
Son tablas que cumplen los siguientes requisitos:
Cada fila debe ser nica, es decir no pueden existir filas duplicadas.
Cada columna debe ser nica
Los valores de las columnas deben pertenecer al dominio de cada atributo
Debe tener un solo tipo de fila, cuyo formato est definido por el esquema de tabla o la
relacin.
El valor de la columna para cada fila debe ser nico.
No puede contener columnas duplicadas.
2.4. Claves
En una tabla relacional a veces es necesario poder determinar una tupla (registro)
concreta, lo cual es posible mediante la clave. Se debe elegir la clave entre los atributos,
de forma que no puedan existir valores duplicados (la clave puede contener uno o ms
atributos).
2.5. Operaciones sobre Tablas
Todas las operaciones que podamos realizar sobre las tablas, vistas o elementos de ellas,
estn integradas en el SGDBR (Sistema Gestor de Bases de Datos Relacional) como
rutinas. Ejemplos de operaciones son:
Seleccin.
Obtiene un subconjunto de filas de la tabla o vista, que cumplen una determinada
condicin.
Proyeccin.
Obtiene un subconjunto de columnas de todas las filas de la tabla.
Unin: Realizamos la unin de varias tablas, cuyo resultado ser el conjunto de todas las
filas de las tablas origen. Las columnas respectivas de dichas tablas deben ser iguales
entre s.
Diferencia.
Inversa a la anterior, devuelve las filas que estn en una tabla y no pertenezcan a una
segunda tabla. Deben por tanto ser iguales tambin las columnas respectivas entre s.
Join.
Es la operacin de unir filas de dos tablas a travs de algn campo comn (normalmente
la clave), dando como resultado filas con la suma de columnas de ambas tablas cuando
se cumpla la condicin del Join a travs del campo (o campos) relacionados.
R u t
N o m b re
D ir e c c i n
F o no
G ir o
CLIENTE
RUT NOMBRE DIRECCIN FONO GIRO
PASO 1
Transformar cada entidad en una relacin, la cual contiene los conjuntos de valores
de los identificadores (claves) y descriptores (no claves)
Cada entidad en una jerarqua de generalizacin o jerarqua de subconjunto es
transformada en una relacin. Cada una de estas relaciones contiene la clave de la
entidad genrica. La relacin de la entidad genrica contiene los atributos
descriptivos (no claves) especficos a cada subtipo de entidad. Otra opcin es incluir
todos los atributos de subtipos en el supertipo (entidad genrica) y permitir valores
nulos.
PASO 2
Transformar cada relacionamiento binario (o unario) de conectividad mucho-a-
mucho en una relacin con las claves de las entidades y atributos del
relacionamiento.
PASO 3
Transformar cada relacionamiento ternario (o ms alto n-ario)en una relacin
utilizando las reglas que se dan a continuacin.
Compaero-de
Empleado, un empleado Empleado (arut, nombre,
puede tener a otro empleado Empleado direccin, rut-esposo)
como su esposo(a)
Valores nulos (V.N)
rut.esposo permitido en
empleado
Jefe de
Vendedor (arut, nombre,...
Vendedor, un vendedor Vendedor rut.dirige)
dirige a uno de los otros
vendedores. V.N rut.dirige no permitidos
Uno debe ser dirigido por a vendedor
otro vendedor
Dirige
Producto, cada producto Producto (acdigo, precio,
puede ser parte de (o ser Producto descripcin, stock)
componente) muchos otros
productos Componente(acdigo,
acdigo. compo)
Proporcin)
Formar
PC
V. N RutCl permitidos
Factura
Factura
Producto
CLIENTES VENDEDORES
CRUT VRUT
CAPELLIDOS VAPELLIDO_PATERNO
CNOMBRE VAPELLIDO_MATERNO
CDIRECCION FACTURAS VNOMBRES
CCIUDAD FNUMERO VDIRECCION
CPAIS VMAIL
FFECHA
CFONO FNETO GENERA
VMETASEMESTRAL
CFONOMOVIL POSEER VMETAANUAL
FIVA
CMAIL FDESCUENTO VSUELDO
CGIRO VCOMISION
FTOTAL
CSITUACION VTIPO
CACTIVOS VFECHA_CONTRATO
CPASIVOS VCIUDAD
CSALDO
TENER
CLIMITECREDITO
CTIPO
DETALLE
DENUMERO
DECODIGOPRODUCTO VENDEDOR NACIONAL VENDEDOR INTERNACIONAL
DECANTIDAD VNFONO VICODIGO POSTAL
DESUBTOTAL VNFONO_MOVIL VISEGUROS
VNANEXO VIFAX
VNZONA VIASIGNACION
ESTAR
PRODUCTOS
PCODIGO
PDESCRIPCION ASIGNADO
PPRECIO_VENTA
PEXISTENCIA
PSTOCKMINIMO
PESPECIFICACION
PCOLOR PAIS
PPESO PACODIGO
PANOMBRE
PAPOBLACION
PAUBICACION
PATAMAO_MERCADO
FACTURAS
FNUMERO integer VENDEDOR_INTERNACIONAL
CRUT varchar(10) VRUT varchar(10)
VRUT varchar(10) PACODIGO integer
CRUT = CRUT VEN_VRUT varchar(10) VEN_VRUT varchar(10)
FFECHA date VEN2_VRUT varchar(10)
FNETO integer VAPELLIDO_PAT varchar(25)
FIVA integer VAPELLIDO_MAT varchar(25)
FNUMERO = FNUMERO FDESCUENTO integer VRUT = VEN_VRUT
VNOMBRES varchar(10)
FTOTAL integer VDIRECCION varchar(25)
CLIENTES
VCIUDAD varchar(20)
CRUT varchar(10)
VMAIL varchar(20)
CAPELLIDOS varchar(25)
VMETASEMESTRAL integer
CNOMBRE varchar(25)
VMETAANUAL integer
CDIRECCION varchar(25)
VSUELDO integer
CCIUDAD varchar(15)
VCOMISION integer
CPAIS varchar(15)
VTIPO varchar(10)
CFONO integer
VFECHA_CONTRATO date
CFONOMOVIL smallint
VICODIGO_POSTAL varchar(20)
CMAIL varchar(20)
VISEGUROS integer
CGIRO varchar(10)
VIFAX integer
CSITUACION varchar(10) VRUT = VRUT VIASIGNACION integer
CACTIVOS integer
CPASIVOS integer
CLSALDO integer
CLIMITECREDITO integer
CTIPO varchar(10)
VRUT = VEN_VRUT
DETALLE
VENDEDOR_NACIONAL
FNUMERO integer
PCODIGO integer VRUT varchar(10)
PRO_PCODIGO integer VEN_VRUT varchar(10)
DECANTIDAD integer VAPELLIDO_PAT varchar(25)
DESUBTOTAL integer VAPELLIDO_MAT varchar(25)
VNOMBRES varchar(10)
VDIRECCION varchar(25)
PACODIGO = PACODIGO
VCIUDAD varchar(20)
VMAIL varchar(20)
VMETASEMESTRAL integer
VRUT = VEN_VRUT
VMETAANUAL integer
VSUELDO integer
VCOMISION integer
VTIPO varchar(10)
PCODIGO = PRO_PCODI GO VFECHA_CONTRATO date
PCODIGO = PCODIGO VNFONO integer
VNFONO_MOVIL integer
VNANEXO integer
PRODUCTO_NACIIONAL VNZONA varchar(10)
PCODIGO integer
PDESCRIPCION varchar(30)
PPRECIO_VENTA integer
PEXISTENCIA integer
PAIS
PSTOCKMINIMO integer
PESPECIFICACION varchar(20) PACODIGO integer
PCOLOR varchar(20) PANOMBRE varchar(20)
PPESO integer PAPOBLACION integer
PNCOSTO integer PAUBICACION varchar(20)
PATAMANO_MERCADO integer
PRODUCTO_IMPORTADO
PCODIGO integer
PDESCRIPCION varchar(30)
PPRECIO_VENTA integer
PEXISTENCIA integer
PSTOCKMINIMO integer
PESPECIFICACION varchar(20)
PCOLOR varchar(20)
PPESO integer
PICIF integer
PIFOB integer
PISEGUROS integer
PICOSTO integer
PIORIGEN varchar(20)
DDL (Data Definition Language), son los comandos que permiten definir la estructura
de la base de datos relacional, como por ejemplo: Crear tablas, indexes, Alterar
Tablas, Crear Vistas.
DML (Data Manipulation Language), son los comandos que permiten insertar nuevos
registros, modificar registros en la base de datos y eliminar registros, adems, de la
recuperacin de la informacin. Los comandos son: Insert, Update y Select.
DCL (Data Control Language), son los comandos de control y seguridad del sistema.
2.1. INSERT.
Se usa para insertar una fila (ver format 1) o una seleccin de filas desde cualquier parte
de la base de datos (ver format 2) en una tabla.
Format 1:
INSERT INTO [ owner.]table-name [( column-name, ... )]... VALUES ( expression | DEFAULT,
..)
Format 2:
INSERT INTO [ owner.]table-name [( column-name, ... )] . select-statement
En el primer formato se inserta en tabla una fila con los valores especificados en
los campos especificados (el isimo literal en la lista de literales corresponde al
isimo campo en la lista de campos). En el segundo formato, se evala la
subconsulta y se inserta una copia del resultado (casi siempre varias filas) en
tabla; la isima columna de ese resultado corresponde al isimo campo en la lista
de campos. En ambos casos, omitir la lista de campos equivale a especificar una
lista con todos los campos de la tabla, en orden de izquierda a derecha (como en
el caso de SELECT*).
Omitir la lista de campos equivale a especificar una lista con todos los campos de
la tabla, en el orden de izquierda a derecha con el cual se definieron en la
proposicin CREATE TABLE. Como en el caso de SELECT*, esta forma corta
quiz sea conveniente en SQL interactivo, pero puede ser peligrosa en SQL
embebido (o sea, SQL dentro de un programa de aplicacin) porque la lista de
campos supuesta puede cambiar si el programa se religa y ha cambiado
entretanto la definicin de la tabla.
UPDATE table-list
... SET column-name = expression, ...
... [ FROM table-list ]
... [ WHERE search-condition ]
... [ ORDER BY expression [ ASC | DESC ] ,... ]
Todos los registros de tabla que satisfagan condicin sern modificados de acuerdo
con las asignaciones (campo = expresin-escalar) de la clusula SET (establecer).
Permisos: se debe terner un permiso de UPDATE para las columnas que han de
modificarse.
"Cambiar a blanco invierno el color del producto nacional 30, aumentar su peso en 5 e
indicar que su especificacin es desconocida (NULL)".
UPDATE producto_nacional
SET pcolor = 'blanco invierno', ppeso = ppeso + 5, pespecificacion =
null
where pcodigo = 30;
Para cada uno de los registros que se van a modificar (es decir, cada registro que
satisface la condicin WHERE, o todos los registros si se omite la clusula WHERE), las
referencias en la clusula SET a campos dentro de ese registro representan los valores
que tienen esos campos antes de ejecutarse cualquiera de las asignaciones de esa
clusula SET.
UPDATE vendedor_nacional
SET vmetasemestral = vmetasemestral * 2
where vciudad = 'Santiago'
DELETE
FROM producto_naciional
WHERE pcodigo = 10;
"Eliminar todos las ventas cuya cantidad sea mayor que 300.
DELETE
FROM Detalle
WHERE DECantidad > 300;
Detalle es todava una tabla conocida (eliminar todos los registros no equivale a
desechar (DROP) la tabla), pero ahora est vaca.
DELETE
FROM Facturas
WHERE Ffecha < 1999;
Select pcodigo
From Detalle;
Pcodigo
10
20
30
40
50
60
10
20
30
60
"Obtener, para todos los productos nacionales, el cdigo del producto y su peso en
gramos (en la tabla estn en libras).
Select Pcodigo, 'Peso en gramos = ', ppeso * 454
From producto_nacional;
Pcodigo
10 Peso en gramos = 4566
20 Peso en gramos = 7712
20 Peso en gramos = 7712
30 Peso en gramos = 6576
40 Peso en gramos = 8626
Select *
From Vendedor_nacional;
5. - Recuperacin calificada.
" Obtener el RUT de los vendedores nacionales de la zona Santiago Centro cuyo sueldo
sea mayor que 400.000"
Select vrut as Nmero
From vendedor_nacional
Where vnzona = Santiago Centro
AND vsueldo > 400.000;
Nmero
4078990-5
2099999-8
7. - Consultas de reunin.
7.1 Equirreunin
"Obtener todas las combinaciones de informacin de clientes y vendedores tales que el
cliente y el vendedor en cuestin estn situados en la misma ciudad".
Las referencias a campos en clusula Where deben calificarse con los nombres de las
tablas correspondientes (pues de lo contrario seran ambiguas).
- El resultado de esta consulta es una reunin de tablas con base en valores de
ciudad iguales.
- No es obligatorio emplear la igualdad como operador de comparacin en una
condicin de reunin.
- Si el operador es la igualdad la reunin recibe el nombre de equirreunin. Se produce
un resultado con 2 columnas idnticas.
- Si se elimina una de esas columnas una reunin natural.
Las uniones naturales y las uniones de claves se generan uniendo condiciones: esto es,
la palabra CLAVE o NATURAL indica una restriccin en los resultados de la unin.
Para una unin natural, la condicin de unin generada se basa en los nombres de las
columnas en las tablas unidas; para unin de claves, la condicin se basa en una relacin
de foreign key entre dos tablas.
La forma ms simple de una condicin de unin es usarla en vez de una unin de claves
o una unin natural. En la base de datos de muestra, las siguientes son equivalentes:
Si se usa el mismo nombre de correlacin dos veces para la misma tabla enuna expresin
de tablas, dicha tabla es tratada como si hubiese sido listada slo una vez. Por ejemplo,
en:
cnombre Vombre
Juan Mario
Olga Mario
Omar Mario
Luis Pablo
Ivn Daz Pablo Cceres
Para distinguir entre dos referencias, se introduce las variables de recorrido arbitrarias
Primera y Segunda, cada una de las cuales recorre la tabla Cliente. En todo momento,
Primera representa alguna fila de la "primera" copia de Cliente, y Segunda representa
alguna fila de la "segunda" copia de Cliente. El resultado de la consulta se obtiene
examinando todas las posibles parejas de valores Primera/Segunda y probando la
condicin Where en cada caso. La condicin primera.rut < segunda.rut es doble: a)
elimina parejas de nombre de clientes de la forma (x,x); b) garantiza la aparicin de slo
una de las parejas (x,y), y (y,x).
Select count(*)
From Cliente;
Select count(*)
From detalle
Where d.pcodigo = 10;
Select sum(d.dcantidad)
From detalle as d
Where d.dcodigo = 10;
pcodigo
10 600
20 1000
30 500
50 2000
Having es a los grupos lo que Where es a las filas (s se especifica Having, deber
especificarse tambin Group By).
Una subconsulta es una expresin Select ... From ... Where ... Group By ... Having
anidada dentro de otra expresin del mismo tipo. Las subconsultas se utilizan por lo
regular para representar el conjunto de valores en el cual se realizar una bsqueda
mediante una condicin IN (en). Para evaluar la consulta completa, el sistema evala
primero la subconsulta anidada.
Select c.cnombre
From Cliente c, Factura f
Where (c.crut = f.crut)
AND f.ffecha > '27/07/02');
Subconsulta con operador de comparacin distinto de IN.
"Obtener el nombre de los clientes situados en la misma ciudad que el vendedor Rut
12.888.999-0"
Select c.cnombre
From Cliente c
Where c.cciudad =
(Select v.vciudad
From vendedor v
Where v.vrut = '12.888.999-0');
EXIST representa el cuantificador existencial. La expresin "Exist (Select ... From ..)" da
como
resultado un valor verdadero si y slo si el resultado de evaluar la subconsulta no es un
subconjunto vaco.
UPDATE Detalle
SET DEcantidad = 0
WHERE Valparaso =
(SELECT v.vCIUDAD
FROM Vendedor_nacional as v
WHERE v.vrut = de.rut);
UPDATE Vendedor
SET v.vrut = 7.999.777-9
WHERE v.vrut = 10.888.777-8;
UPDATE Facturas
SET f.rutvend = 7.999.777-9
WHERE f.rutvend = 10.888.777-8;
Como por definicin las operaciones UPDATE (y DELETE e INSERT) modifican la base
de datos, existe siempre la posibilidad de alterarla en alguna forma incorrecta y violar con
ello la integridad de los datos. El ejemplo ilustra este punto: la primera proposicin
UPDATE (si fuera aceptada) hara inconsistente a la base de datos incluira algunos
envos para los cuales no existira el proveedor correspondiente- y permanecera en ese
estado en tanto no se ejecutara la segunda proposicin UPDATE. (En este ejemplo
pasamos por alto el hecho de que, en la prctica, DB Relacional rechazaran de todos
modos la primera modificacin, precisamente por este problema de integridad). De
hecho, el ejemplo ilustra un tipo muy especfico de violacin de la integridad, a saber, una
violacin de la integridad referencial.
Por cierto, no es indispensable que la tabla est vaca antes de efectuar una insercin de
varios registros, aunque s lo est en el ejemplo anterior. Si no est vaca, los nuevos
registros simplemente se agregarn a los ya presentes.
Normal Dbil
0..1
0..* *
1..1 1
1..*
solicita
Proyecto Consultor
numero pr <pi> I <M> rut con <pi> TXT <M>
descripcion gral pr TXT genera
nombre con TXT
fecha D apellido con TXT
costo pr N fono con I
valor pr N
rut con <pi>
numero pr <pi>
contiene
DetalleProyecto
cantidad recurso I
cantidad equipo I
subtotal N
IVA N
Total N
FK_PROYECTO_SOICITA_CLIENTE
Proyecto
numero pro INTEGER <pk> Consultor
rut cl NOTE <fk1>
rut con NOTE <fk2> FK_PROYECTO_GENERA_CONSULTO rut con NOTE <pk>
descripcion gral pr NOTE nombre con NOTE
fecha pr NUMERIC apellido con NOTE
costo pr NUMERIC fono con INTEGER
valor pr NUMERIC
FK_DETALLEP_CONTIENE_PROYECTO
DetalleProyecto
numero pro INTEGER <pk,fk>
cantidad recurso INTEGER
cantidad equipo INTEGER
subtotal NUMERIC
IVA NUMERIC
Total NUMERIC
Las tecnologas Web consideran el diseo y construccin de sitios y pginas Web como
un aspecto base, al cual se incorporan tecnologas que potencian la funcionalidad y el
diseo como son las aplicaciones java y el uso de sistemas de bases de datos en lnea a
travs de su vinculacin con pginas dinmicas.
La aparicin de estas aplicaciones del tipo WYSIWYG2, las cuales pueden ser
consideradas como herramientas de modelado visual, permite que usuarios no
interiorizados con el lenguaje en s, puedan crear por propia iniciativa sus documentos de
pginas Web en forma simple y rpida.
La evolucin del lenguaje HTML ha permitido establecer vnculos con otro tipo de
documentos como son archivos de imgenes, vdeo, audio, aplicaciones, con lo cual ha
aumentado su funcionalidad y potencialidad en el desarrollo de documentos en la World
Wide Web.
1
Hyper Text Markup Language
2
Abreviacin para What You See Is What You Get (Lo que ves es lo que obtienes).
Profesor. Oscar Saavedra Rodrguez 68
1.1.1. Pginas Estticas y Dinmicas
En la medida que el uso de Internet se fue haciendo ms popular como Sistema de
Informacin, surgi la necesidad de incorporar un mayor dinamismo a la pginas Web que
muestran la informacin estticamente. Debido a esto, se desarrollaron las pginas Web
dinmicas, las cuales permiten establecer un cierto nivel de interaccin con los usuarios.
De este modo, los documentos de pginas Web se pueden clasificar en los siguientes
tipos:
Los editores de pginas Web son aquellas aplicaciones que permiten la creacin de
documentos HTML, la cual puede llevarse a cabo a travs de la de creacin y edicin de
cdigo por medio de los denominados Editores HTML; o bien, por medio de edicin de la
vista de diseo utilizando Editores WYSIWYG.
Por otra parte, los editores WYSIWYG son utilizados por usuarios que desean crear y
editar pginas del mismo modo como lo hacen con un procesador de palabras. Adems,
los editores WYSIWYG son altamente empleados por usuarios ya sean principiantes, o
bien, que tienen poco o ningn conocimiento del cdigo. Los editores WYSIWYG ms
populares son:
Dreamweaver. Es un editor visual de pginas Web que ha alcanzado un alto nivel de
sofisticacin sin perder simplicidad, convirtindolo en la opcin ideal. Permite el manejo
de capas, efectos de HTML dinmico, entre otras herramientas profesionales. Tambin
posee la opcin de edicin y vista de cdigo, por lo que tambin puede ser utilizado como
un editor HTML.
FrontPage2000. Es un programa pensado para aprovechar la gran cantidad de temas que
se pueden incorporar a un sitio Web. Es ideal para aquellos usuarios que buscan realizar
un diseo rpido. Al igual que Dreamweaver, posee la opcin de edicin y vista de cdigo.
HotMetal Pro. Es una herramienta bastante cmoda para profesionales, aunque con un
uso bastante limitado en sus acciones.
Adobe Golive. Es una aplicacin que posee muchas funciones y ayudas. Se caracteriza
por su facilidad de uso. Tambin posee la opcin de edicin y vista de cdigo.
Los navegadores o browsers son utilizados para ver los resultados de las pginas que se
crean. Sin embargo, dadas las caractersticas del lenguaje HTML, se recomienda no
utilizar un solo navegador para la visualizacin de los documentos de pginas Web, ya
que muchas veces el navegador est a cargo de la visualizacin de los detalles, por lo
que dos navegadores pueden presentar de manera diferente un documento HTML.
Tal como ya se ha visto, el diseo y creacin de una pgina Web considera la creacin de
un cdigo. Sin embargo, la creacin del cdigo no es lo nico que se debe tomar en
cuenta. En la mayora de los casos est la incorporacin de imgenes, las cuales deben
ser creadas o editadas. Para ello se debe contar con programas de tratamiento de
imgenes. Algunos de los programas ms populares en el tratamiento de imgenes se
encuentran: Fireworks, Paint Shop Pro, Corel Draw, Adobe PhotoShop.
El lenguaje HTML ha sido, y sigue siendo, muy exitoso en mostrar documentos en la Web.
El crecimiento y desarrollo explosivo que ha sufrido Internet, as como los intereses
comerciales de las organizaciones ha requerido que el lenguaje evolucione para satisfacer
las continuas necesidades de funcionalidad y diseo de las pginas. Sin embargo, el
lenguaje sigue siendo bastante rgido. Esto llev a los desarrolladores de HTML a
estructurar un nuevo lenguaje denominado XML3, ms flexible que HTML, pero capaz de
aprovechar sus ventajas.
Los diseadores pueden crear sus propios tipos de documentos, los cuales pueden ser
hechos a medida al poder crear etiquetas propias.
La presentacin se lleva cabo mediante una hoja de estilo, la cual corresponde a una
descripcin de cmo debe visualizarse una informacin en un medio determinado. Segn
sea la conveniencia para la presentacin de un mismo documento, se pueden emplear
3
Extensible Markup Language
Profesor. Oscar Saavedra Rodrguez 71
diferentes hojas de estilo. Es decir, se puede emplear una hoja de estilo para presentar el
documento como pgina Web, otra para presentarlo como texto imprimible, etc.
Para que un documento XML sea vlido debe cumplir con los siguientes requisitos:
El documento debe estar bien estructurado.
El elemento raz debe coincidir con el nombre que proporcione la declaracin del tipo de
documento.
El documento debe tener una Definicin de Tipo de Documento (DTD) que declare todos
los elementos, atributos y entidades que se utilicen en el documento.
El documento debe adherirse a la gramtica que establezca la DTD.
Las entidades pueden ser de dos tipos: analizadas o sin analizar. El contenido de una
entidad analizada tambin es conocido como texto de reemplazo y es parte integrante del
documento. En cambio, las entidades no analizadas son recursos cuyo contenido puede
ser texto o no. Las entidades se invocan a travs de su nombre; en el caso de las
entidades analizadas la invocacin se lleva a cabo a travs de su referencia a entidad, y
en el caso de las entidades no analizadas, se realiza a travs de sus atributos de entidad.
Por otra parte, la estructura lgica est determinada por los elementos que hay en dicho
documento junto con las relaciones que hay entre ellos. Los elementos estn delimitados
por etiquetas de comienzo y de final. Cada elemento tiene un tipo identificado por un
PHP se caracteriza por presentar varias virtudes que corroboran su alta funcionalidad y
utilidad, especialmente para el trabajo con sistemas de gestin en lnea basados en
pginas Web dinmicas con conexiones a bases de datos tanto dentro de una Intranet
como en Internet. Las caractersticas de PHP consideran:
PHP presenta la posibilidad de llevar a cabo una serie de tareas tiles en la gestin de
sistemas de informacin en lnea, como son:
El envo de correo a una persona o a una lista parametrizando toda una serie de aspectos
tales como e-mail de procedencia, el asunto, persona a responder, entre otras.
La generacin de interfaces para acceder a bases de datos comerciales y por ODBC, a
partir de las cuales se puede editar el contenido de un sitio en forma sencilla.
La realizacin de funciones de administrador FTP para la gestin de archivos a partir de
sentencias en el cdigo para el cual PHP ha previsto una gran cantidad de funciones
adems de las estndares (crear, borrar, mover, modificar, etc.).
El uso de PHP facilita la realizacin de operaciones tales como el uniformar el tamao de
imgenes o la creacin de platillas Web donde slo se modifican contenidos con el uso de
libreras de funciones grficas.
4
Personal Home Page
Profesor. Oscar Saavedra Rodrguez 73
1.4. MySQL
Por otra parte, un aspecto muy importante para cualquier base de datos relacional es la
consistencia de las tablas que la componen, y para conseguir esto de una forma
relativamente fcil se utiliza la Lgica Transaccional, donde ser el mismo gestor de base
de datos el que proporcione mecanismos de bloqueo de ficheros y consolidacin o
retroceso en las operaciones con las tablas. No obstante, tal como se mencion, MySQL
no soporta las transacciones en favor de la velocidad y slo permite la utilizacin de
comandos de bloqueo y desbloqueo de tablas, impidiendo que otros usuarios puedan
acceder a ellas, pero sin la posibilidad de deshacer las operaciones realizadas con los
datos.
1.5. Java
Las aplicaciones de Java pueden ser autnomas, de red o distribuidas. La diferencia entre
cada una de stas se centra en el uso de los recursos. Para el caso de las aplicaciones
autnomas, el programa se ejecuta por medio de los recursos de un solo computador; en
el caso de las aplicaciones de red, se utilizan los recursos disponibles en la red; mientras
que en el caso de las aplicaciones distribuidas, stas estn formadas por objetos que se
ejecutan en mltiples computadores.
Por estas razones, es necesario disear un eficiente sistema de informacin que refleje
los siguientes procesos: el proceso se inicia cuando un jefe o gerente de unidad debe
enfrentar el desarrollo de un nuevo e importante proyecto y requiere personal; por tal
motivo se determina el perfil del personal a contratar o asignar. Con estos antecedentes
se comienza el proceso de reclutamiento de personal. Esta actividad debe difundir los
requerimientos de personal al mercado laboral y revisar las bases de datos internas de la
unidad, a travs de distintos medios (contactos en las Universidades, peridico, radio,
etc.). Una vez que llegan los antecedentes de los postulantes se inicia el proceso de
seleccin (entrevistas, pruebas, tests, etc.). Este proceso puede ser con postulantes
externos y personal interno que desea una promocin. En este momento se actualiza la
base de datos de personal con la informacin del postulante (Rut, nombre, fecha de
nacimiento, direccin, estado civil, nacionalidad, estudios bsicos, estudios universitarios,
ttulo profesional, habilidades personales, experiencia, trabajo anterior, recomendacin,
personas recomendacin, capacidad fsica, capacidad intelectual, etc.).
Una vez terminado el proceso de seleccin, el personal aceptado pasa por un proceso de
socializacin (se dan a conocer las normas y procedimientos de la Organizacin, el
puesto que desempear, colegas, etc.), en este momento se actualiza nuevamente la
base de datos con la informacin del cargo (nmero, nombre, descripcin, funciones y
responsabilidades, dependencia y cargos, subordinados), el contrato (nmero, fecha
contrato, tipo contrato, sueldo bruto, beneficios mdicos, AFP, descuentos especiales,
asignaciones especiales, sueldo neto, etc.).
Una vez transcurrido un tiempo, una persona en la empresa pasa a un proceso de retiro o
separacin de la unidad; esto puede ser por renuncia, jubilacin o despido. En este
momento se calculan todos los indicadores de acuerdo a los antecedentes en la base de
datos de personal y se realiza el proceso respectivo.
Depto de RRHH
Cargo Contrato
Personal
Capacitar personal
Mantener Personal
Evaluacin
Evaluar Personal
Expediente
Cursos capacitacin
De fi n i r p e rfi l Je fe d e A re a
De p to d e RRHH
Re vi sa r i n fo rm a ci n e n B D d e p e rso n a l Di fu n d i r a m e rca d o l a b o ra l
Re ci b i r a n te ce d e n te s d e p o stu l a n te s
A n te ce d e n te s d e P o stu l a n te s E xte rn o s
[NO ]
Re a l i za r e n tre vi sta i n i ci a l
P o stu l a n te s
P e rso n a l
E n tre vi sta a p ro b a d a
[NO ]
[S I]
Ca rg o
Re a l i za r te sts
T e sts a p ro b a d o s
[NO ]
[S I]
Re a l i za r e n tre vi sta fi n a l
[S I] [NO ]
E n tre vi sta a p ro b a d a
Co n tra to
S e l e cci o n a r p o stu l a n te
De si g n a r p e rso n a l a ca p a ci ta r
Cu rso s ca p a ci ta ci n
P e rso n a l
O b te n e r re su l ta d o s d e ca p a ci ta ci n
Re su l ta d o s ca p a ci ta ci n
Re g i stra r re su l ta d o s d e ca p a ci ta ci n
Je fe d e A re a
Cursos capacitacin
Evaluar empleado
Evaluacin de desempeo
Personal
Evaluacin
Archivar Evaluacin
Jefe de Area
Cursos capacitacin
Revisar Contrato
Contrato
Evaluacin
[NO]
Cargo
Jefe de Area
[SI]
Despedir Empleado Remover empleado
[NO]
Depto de RRHH
Cada uno de los diagramas presentados muestra los detalles del proceso de negocios del
rea en estudio, teniendo en cuenta cmo se lleva cabo las cuatro principales tareas, es
posible obtener los requisitos necesarios para el modelado del problema y la delimitacin
de su dominio y solucin.
Una vez terminado el modelado del sistema de acuerdo a esta metodologa, se analiza el
sistema desde una perspectiva estructural a travs de la utilizacin del enfoque de base
de datos. Con este propsito y el apoyo de herramientas CASE, se puede continuar con el
modelado del sistema, efectuando una conversin del diagrama de clases a un modelo
conceptual de datos, en el cual se definen los identificadores que permitirn distinguir un
registro de otro, para luego llevar a cabo el proceso de normalizacin de datos.
FK_EMPLEADO_ES_POSTULAN
FK_CONTRATO_FIRMA_EMPLEADO
Externo Empleado
rut CHAR(9) <pk,fk> rut CHAR(9) <pk,fk2>
fechaPostulacion DATE codigoCargo INTEGER <fk1>
antiguedad INTEGER
FK_EXPEDIEN_PERTENECE_EMPLEADO FK_EMPLEADO_EJECUTA_CARGO
Cargo
FK_CONFORMA_CONFORMA_EMPLEADO
codigoCargo INTEGER <pk>
ExpedienteDisciplinario nombreCargo NOTE
numeroExpediente INTEGER <pk> descripcion NOTE
rut CHAR(9) <fk> conforma funciones NOTE
fechaExpediente DATE responsabilidades NOTE
motivo NOTE codigoEquipo INTEGER <pk,fk1> dependencia NOTE
unidad NOTE rut CHAR(9) <pk,fk2> subordinados NOTE
responsable NOTE
recomendaciones NOTE
FK_CONFORMA_CONFORMA_EQUIPOEV
FK_EVALUACI_GENERA_EXPEDIEN
EquipoEvaluador
Evaluacion
codigoEquipo INTEGER <pk>
numeroExpediente INTEGER <pk,fk> numeroIntegrantes INTEGER
fechaEvaluacion DATE
tipoEvaluacion NOTE
conocimiento NOTE
participacion NOTE
relacionesInterpersonales NOTE
trabajoEquipo NOTE
liderazgo NOTE
A travs de las herramientas CASE, se puede llevar a cabo la creacin de una base de
datos para algn DBMS5 deseado y llevar a cabo la conexin del modelo fsico obtenido
a partir del modelo conceptual, generando una aplicacin utilizable en una forma mucho
ms ptima y rpida. En la siguiente figura se presenta el modelo fsico implementado en
el DBMS MS Access, generado automticamente con la Herramienta CASE a partir de los
modelos desarrollados. Tambin se muestra una interfaz de la base de datos diseada en
MS Access para el ingreso de datos de los empleados.
Figura 8.17. Modelo Fsico de Datos Implementado en MS Access.
5
Database Management System: Sistema Administrador de Base de Datos
Profesor. Oscar Saavedra Rodrguez 84
Fuente: Elaboracin Propia.
Figura 8.18. Interfaz de Ingreso de Datos para los Empleados (MS Access).