Академический Документы
Профессиональный Документы
Культура Документы
BASE DE DATOS
Unidad 2 – Herramientas de Base de Datos (ERWIN)
Contenido 1 – Introducción al Erwin
Contenido 2 – Creación de Llaves
Contenido 3 – Creación de Relaciones
Contenido 4 – Modelo Físico de Datos
M S C . I N G . M A R T IN A N D RÉS G U T I É R RE Z L Ó PE Z
V E R S I O N 20 1 8
CONTENIDO DEL CURSO
Diseño Diseño
Lógico Físico
El Modelo de Patitas de
Gallo (o Patas de Cuervo)
usa IE.
Tipo de
Modelo
• LOGICO
• FISICO
T1 T1 T7
T2 T5 T8
T3 T4 T6 T4 T3 T9
Algunos botones
pueden cambiar si se
cambia de un
Estándar IDEF1X a IE
FOREIGN KEY (FK).- La Llave Foránea es la llave primaria (PK) de otra entidad que ha sido relacionada con la entidad en análisis.
Estos campos llegan a convertirse en Foreign Key (FK). Esos campos sirven como referencia (link) a la entidad tercera.
tiene NUMERO
PERSONA
pertenece TELEFONICO
Cod_Persona (PK) Id_NumTelefonico
ATRIBUTOS DE
LA ENTIDAD
IDENTIFYING RELATION.- Una Relación de IDENTIFICACION es cuando la existencia de una tupla de la entidad
Hija depende de una tupla de la entidad Padre.
tiene NUMERO
PERSONA
pertenece TELEFONICO La Llave Primaria de la Entidad NUMERO TELEFONICO incluye la referencia a la llave
Cod_Persona (PK) Cod_Persona (FK) primaria de la entidad padre PERSONA.
Id_NumTelefonico Si la llave Primaria de esta entidad no tuviera dicha referencia, el Id_NumTelefonico por sí
Nombre solo, no le da existencia al número telefónico porque pertenece a alguien.
Apellido Paterno Número Telefónico
Apellido Materno Cod. Prefijo Ciudad
Cod. Prefijo País La línea de la relación que une las dos entidades es una LINEA CONTINUA.
NON IDENTIFYING RELATION.- Una Relación de NO IDENTIFICACION es cuando la existencia de una tupla de la
Entidad Hija no depende de una tupla de la Entidad Padre para existir.
puede ocupar
La llave Primaria de la entidad ASIENTO no incluye la referencia a la llave primaria de la
PASAJERO ASIENTO entidad PASAJERO.
puede ser
Cod_Pasajero (PK) ocupado Num_Asiento La entidad ASIENTO no necesita de tener el “cód. Pasajero” para existir. Este valor puede
estar en NULO inicialmente.
Nombre Pasajero Cod. Pasajero (FK) Sin embargo, este tipo de relaciones, hacen que la referencia “Cod. Pasajero” se traslade
a la entidad ASIENTO como una referencia FK.
Curso : Diseño de Base de Datos La línea de la relación que une las dos entidades es una LINEA DISCONTINUA. 16
Docente: Msc. Ing. Martín Andrés Gutiérrez López
2.3 CREACION DE RELACIONES
IDENTIFYING RELATION que se convierte en NON IDENTIFYING RELATION Una relación Non-
Identifying puede
tiene ser opcional u
NUMERO obligatoria, lo cual
PERSONA La Llave Primaria de la entidad NUMERO TELEFONICO es
pertenece TELEFONICO significa que la
Cod_Persona (PK) Cod_Persona (FK) compleja e incluye la referencia a la llave primaria de la
entidad padre PERSONA más un identificador único de columna FK
Id_NumTelefonico
Nombre registro. permite NULL o
Apellido Paterno Número Telefónico NOT NULL
Apellido Materno Cod. Prefijo Ciudad respectivamente.
Cod. Prefijo País
Si configuramos el
campo
Es una práctica común en la actualidad, crear una pseudollave para la
PRACTICA COMUN “Cod_Persona” en
tiene NUMERO obligatorio (NOT
Entidad Hija que no contenga la referencia FK a la Entidad Padre
PERSONA NULL), entonces
cómo parte de la Llave Primaria. pertenece TELEFONICO
Esto puede parecer confuso, sin embargo, se mantiene la relación Cod_Persona (PK) Id_NumTelefonico la entidad Hijo SI
lógica de que el hijo no puede existir sin un padre. depende de la
Nombre Número Telefónico entidad Padre.
Podemos pensar que un número telefónico pertenece a una persona, Apellido Paterno Cod. Prefijo Ciudad
a pesar de que estén modelados como atributos de una entidad Apellido Materno Cod. Prefijo País Si configuramos
separada. Esto es una pista fuerte que es una RELACION de Cod_Persona (FK) opcional, el hijo no
IDENTIFICACION (aún si literalmente no se incluye el Cod_Persona depende.
en la llave primaria de la entidad NUMERO TELEFONICO).
Curso : Diseño de Base de Datos 17
Docente: Msc. Ing. Martín Andrés Gutiérrez López
2.3 CREACION DE RELACIONES
Nombre Pasajero Cod. Pasajero (FK) Nombre Pasajero Cod. Pasajero (FK)
El grado de una relación se define como el número de entidades que participan en una relación.
es delegado de
Tipos de Relaciones
• 1 a 1 (uno a uno) – La entidad se relaciona una sola
vez con otra entidad y viceversa.
Ejemplo: Un PROFESOR es tutor de una sola AULA Y
un AULA es tutoriada por un solo PROFESOR. NOTACION DE PATAS DE GALLO
(PATAS DE CUERVO)
• 1 a M (uno a muchos) – La entidad se relaciona con
varios registros de la otra entidad. ESTANDAR IE
Ejemplo: Un ALUMNO pertenece a un AULA y un AULA (INFORMATION ENGINEERING)
puede tener varios ALUMNOS.
(1,1) (1,3)
Z
1 a Cero o Uno CLIENTE REGISTRO_VENTAS CLIENTE REGISTRO_VENTAS
Relación de Relación
Identificación De No
Identificación
ES_TUTOR
PROFESOR AULA
Ejemplo:
Un PROFESOR es tutor de una sola AULA (o de ninguno
para el caso 0)
50 Ian Holmes
Vacío
(sin dpto.) ¿ Qué pasa si quiero borrar el registro “Operaciones” de la tabla
Departamento?
Existen registros hijos en la Tabla Empleado que apuntan a este
valor de llave.
En el ejemplo, tengo que tomar en cuenta, que si borro la clave
“operaciones” de la Tabla Departamento, debes tomar en cuenta que
puedo afectar los registros 10 y 20 de la tabla Empleado.
Curso : Diseño de Base de Datos 26
Docente: Msc. Ing. Martín Andrés Gutiérrez López
2.3 CREACION DE RELACIONES
20 Tim Sanger OP
TE TECNOLOGIA
30 Dave Ficklin CO
40 Stephen Halder TE
50 Ian Holmes
50 Ian Holmes
Curso : Diseño de Base de Datos 28
Docente: Msc. Ing. Martín Andrés Gutiérrez López
2.3 CREACION DE RELACIONES
50 Ian Holmes
R1 Cod_Profesor (PK) R2
Cod_Asignatura (PK)
Caso Especial
Al modificar el valor de llave de un registro en
“Cod_Asignatura” en la Tabla Padre ASIGNATURA, está
configurado de poner en NULO los hijos.
La Tabla CLASE es hija, pero “Cod_Asignatura” no puede
ser NULO porque es parte de la Llave Primaria (PK) de
esa tabla.
Por lo tanto, la Base de Datos, rechazará la ejecución de
modificación.
UNIVERSIDAD
Cod_Universidad (PK)
Nombre_Universidad
DEPARTAMENTO
R1 Cod_Universidad (FK)
Cod_Departamento (PK)
Nombre_Departamento
Para (FK) Cod_Universidad REF UNIVERSIDAD
• MODIFICAR: Propagar en Cascada
• ELIMINAR: Propagar en Cascada
PROFESOR
R2
Cod_Profesor (PK)
Para (FK compuesto) Cod_Universidad + Cod_Departamento
REF DEPARTAMENTO Nombre_Profesor
• MODIFICAR: Propagar en Cascada Cod_Universidad (FK)
• ELIMINAR: Propagar en Cascada Cod_Departamento (FK)
CUENTA
BANCARIA
PUEDES
ORGANIZARLAS
EN JERARQUIA
CUENTA CUENTA DE CUENTA DE
CORRIENTE AHORROS PRESTAMOS
Notación IDEF1X
Curso : Diseño de Base de Datos 33
Docente: Msc. Ing. Martín Andrés Gutiérrez López
2.3 CREACION DE RELACIONES
CUENTA CUENTA BANCARIA
CORRIENTE
Num_CuentaCorriente Id_CuentaBancaria (PK)
Fecha_Apertura_Cuenta
Fecha_Revision_Cuenta Nro_CuentaBancaria
Saldo_Corriente Tipo_Cuenta
Saldo_Disponible Fecha_Apertura_Cuenta
Cargo_por_cuenta Fecha_Revision_Cuenta Atributo Discriminador
Tipo_Cuenta de Sub-Tipo (DiscrSubT)
CUENTA DE
AHORRO
Num_CuentaAhorro
Fecha_Apertura_Cuenta
Fecha_Revision_Cuenta
Saldo_Ahorros
Tasa_Interes CUENTA CUENTA DE CUENTA DE
Interes_Ganado
CORRIENTE AHORRO PRESTAMO
CUENTA DE Id_CuentaBancaria (PK) Id_CuentaBancaria (PK) Id_CuentaBancaria (PK)
PRESTAMO Saldo_Corriente Saldo_Ahorros Fecha_Prestamo_Original
Nro_CuentaPrestamo Saldo_Disponible Tasa_Interes Tasa_Interes_Prestamo
Fecha_AperturaPrestamo Cargo_por_cuenta Interes_Ganado Saldo_Prestamo_Actual
Fecha_Revision_Cuenta
Fecha_Prestamo_Original
Tasa_Interes_Prestamo
Saldo_Prestamo_Actual
Notación IDEF1X
Curso : Diseño de Base de Datos 34
Docente: Msc. Ing. Martín Andrés Gutiérrez López
2.3 CREACION DE RELACIONES
EMPLEADO
Tipo_Empleado (DiscrSubT)
EMPLEADO
Tipo_Empleado (DiscrSubT)
COD_EMPLEADO, Integer
NOMBRE_EMPLEADO, Varchar2(40)
F P EMPLOYEE_TYPE, Char(1), “F/P”
Notación IE
En IE, la
característica
COMPLETA/
INCOMPLETA
es una
definición de
la entidad
pero no se
visualiza
gráficamente.
Tipo de
Modelo
• LOGICO
• FISICO
Algunos botones
pueden cambiar si
se cambia del
Modelo Lógico al
Físico.
Tabla
PROFESOR_X_ASIGNA
TURA
R1 Cod_Profesor (PK) R2
Cod_Asignatura (PK)
MODOS DE OPERACIÓN DE
ERWIN