Exam 3
Exam 3
PARTE TEÓRICA
1. Luego de revisar la Sección 9 del curso DD Database Design Alumno - Español CPD
en Oracle Academy, define cada uno de los siguientes elementos y propiedades del
modelo relacional e indica con qué elemento del diagrama de relación de entidades
(ERD) de la actividad están asociados. Ejemplo: Las tablas se asocian a las entidades.
Siguiendo con el ejemplo de antes, no es posible que haya una actividad que sea “nulo
adultos” o “nulo niños”.
ACTIVIDADES
Nombre Edad Lugar
Nulo Adultos Pista 1
Voleibol Niños Pista 2
Un ejemplo son los valores booleanos, con columnas que sólo aceptan verdadero o falso.
Siguiendo con el ejemplo arriba expuesto, si queremos consultar la edad, será incorrecto,
por ejemplo, consultar los usuarios que tienen el valor de DNI igual al valor de edad. El motivo
es que, aunque tanto los valores de DNI como los de edademp sean enteros, sus dominios son
diferentes; por ello, según el significado que el usuario les da, no tiene sentido compararlos.
Por ejemplo, si entre las entidades ACTOR (obligatoria) y DOBLE (opcional), el campo ID_doble
pasa a la entidad ACTOR.
Describe la forma en la cual se transforman las relaciones 1:n del Modelo Entidad-
Relación al Modelo Relacional. Pon un ejemplo.
- Si es obligatoria en ambos extremos hay que escribir un código adicional para aplicarla.
Entre las entidades ACTOR (cardinalidad varios) y PAÍS (cardinalidad 1), el ID_país pasa como
clave a la entidad ACTOR.
Describe la forma en la cual se transforman las relaciones n:m del Modelo Entidad-
Relación al Modelo Relacional. Pon un ejemplo.
- Toda relación N:M se convierte en una nueva tabla que tendrá como clave primaria las
dos claves primarias de las entidades que se asocian.
- La tabla de intersección contendrá columnas de clave ajena que hacen referencia a las
tablas de origen.
Por ejemplo, si tenemos las entidades ACTOR y PELÍCULA, se creará una tabla llamada
INTERPRETACIÓN, cuyas claves serán ID_actor y IMBD_película.
[TEMPORAR x x x x x
Y TABLE]
INDEX x x x
VIEW x x x
4 u 8 bytes.
Número decimales con tantos dígitos como indique la
DECIMAL precisión y tantos decimales como indique la escala.
Numérico
(m,n)
M+2 bytes sí D > 0, M+1 bytes sí D = 0
El rango de valores va desde el 1 de enero del 1001 al 31
de diciembre de 9999.
DATE Fecha y hora
Están compuestas de: YEAR año, MONTH mes, DAY día.
3 bytes
Desde el 1 de enero del 1001 a las 0 horas, 0 minutos y 0
segundos al 31 de diciembre del 9999 a las 23 horas, 59
minutos y 59 segundos.
DATETIME Fecha y hora
El formato de almacenamiento es de año-mes-dia
horas:minutos:segundos
8 bytes.
Almacena una hora. El rango de horas va desde -838
horas, 59 minutos y 59 segundos a 838, 59 minutos y 59
segundos.
TIME Fecha y hora
El formato de almacenamiento es de 'HH:MM:SS
3 bytes
255 caracteres
CHAR (n) Cadena
N bytes.
VARCHAR
Cadena N+1 bytes
(n)
Hasta 65535 valores distintos
ENUM Cadena
1 o 2 bytes.
Puede contener ninguno, uno ó varios valores de una
lista. La lista puede tener un máximo de 64 valores.
SET Cadena
1, 2, 3, 4 ó 8 bytes, dependiendo del número de valores
FLOAT puede usarse en situaciones en las que puedan existir errores de redondeo y que
requieran el uso intensivo de procesamiento, como el dibujo de gráficas o juegos.
DECIMAL se utiliza en aplicaciones de alta precisión, como por ejemplo, las financieras, o
aquellas donde se hagan cálculos que requieran suma precisión.
VARCHAR tiene una longitud variable, lo que significa que sólo reservará memoria para los
datos que pongamos, además de un prefijo que indica la longitud.
CHAR es más rápido que VARCHAR en cuanto a rendimiento, ya que se sabe de antemano cuál
es la longitud de los datos, no como VARCHAR que tiene una longitud variable. Si vamos a
almacenar datos cuyo tamaño sabemos de antemano, es mejor usar CHAR, pues acelera el
rendimiento. Pero si vamos a almacenar datos de longitud variable que pueden ser más cortos
que el límite, es más conveniente usar VARCHAR.