Diferencia entre revisiones de «Plantilla:Bases Datos/Modelo Logico»
(No se muestran 9 ediciones intermedias de 2 usuarios) | |||
Línea 33: | Línea 33: | ||
Dice que el valor que ha de tomar cada atributo (campo) <br /> | Dice que el valor que ha de tomar cada atributo (campo) <br /> | ||
dentro de una tupla (fila) ha de ser atómico y pertenecer al dominio | dentro de una tupla (fila) ha de ser atómico y pertenecer al dominio | ||
− | |||
− | |||
}} | }} | ||
{{MRM_Definicion|Title=Atributo| | {{MRM_Definicion|Title=Atributo| | ||
Línea 123: | Línea 121: | ||
*Para explicar este concepto hay que tener claros los siguientes conceptos: | *Para explicar este concepto hay que tener claros los siguientes conceptos: | ||
;Propagación de clave | ;Propagación de clave | ||
− | ;Clave | + | ;Clave extranjera o foránea |
;Integridad referencial | ;Integridad referencial | ||
{{MRM_Clave|Title=Propagación de clave| | {{MRM_Clave|Title=Propagación de clave| | ||
Línea 130: | Línea 128: | ||
*Propagar la clave consiste en llevar la clave principal de una entidad a otra. | *Propagar la clave consiste en llevar la clave principal de una entidad a otra. | ||
}} | }} | ||
− | {{MRM_Clave|Title=Clave | + | {{MRM_Clave|Title=Clave extranjera o foránea| |
*El atributo propagado en la relación o tabla no es una caracterísca del objeto o relación. | *El atributo propagado en la relación o tabla no es una caracterísca del objeto o relación. | ||
*Se conoce como elemento externo o extragero | *Se conoce como elemento externo o extragero | ||
Línea 139: | Línea 137: | ||
*'''''Integridad''''' hace referencia a que algo sea bueno válido (integro) | *'''''Integridad''''' hace referencia a que algo sea bueno válido (integro) | ||
*'''''Referencia''''' es que está señalando o haciendo alusión a otro elemento | *'''''Referencia''''' es que está señalando o haciendo alusión a otro elemento | ||
− | La integridad referencial es que los valores de las claves | + | La integridad referencial es que los valores de las claves extranjeras o foráneas<br /> |
Han de ser valores que existan en la tabla donde el atributo referenciado es clave principal<br /> | Han de ser valores que existan en la tabla donde el atributo referenciado es clave principal<br /> | ||
o bien ser nulos si se permite que no haya referencia (el mínimo de las cardinalidades).<br /> | o bien ser nulos si se permite que no haya referencia (el mínimo de las cardinalidades).<br /> | ||
Línea 204: | Línea 202: | ||
}} | }} | ||
[[Archivo:Nulos.png]] | [[Archivo:Nulos.png]] | ||
− | + | *El siguiente ejemplo muestra las dos opciones | |
+ | [[Archivo:atributo_compuesto2relaciones.png]] | ||
+ | }} | ||
+ | ====Interrelaciones==== | ||
+ | *A continuación vamos a estudiar las relaciones | ||
+ | {{MRM_Clave|Title=Interrelaciones o vínculos| | ||
+ | *Estas pueden tener diferente cardinalidad (Luego analizaremos las ternarias): | ||
+ | ;1<nowiki>:</nowiki>N | ||
+ | ;1<nowiki>:</nowiki>1 | ||
+ | ;M<nowiki>:</nowiki>N | ||
+ | *Es importante recordar el concepto de propagar la clave | ||
+ | consiste en llevar la clave de una tabla (clave principal<br /> | ||
+ | a otra tabla donde se convierte en clave extranjera o foránea<br /> | ||
+ | queda establecida una '''''restricción de integridad referencial'''''<br /> | ||
+ | entre ambas tablas | ||
+ | }} | ||
+ | {{MRM_Clave|Title=Interrelaciones 1:N| | ||
+ | *En este caso se produce '''''la propagación de clave''''' | ||
+ | *Siempre propagaremos de la entidad de cardinalidad N a la entidad de cardinalidad 1 | ||
+ | *Pero si lo vemos en el sentido de la Interrelación el sentido es 1-N | ||
+ | *Si hubiera atributos en la interrelación irán la la tabla a la que se propaga | ||
+ | [[Archivo:relaciones_1N2relacional.png]] | ||
+ | {{MRM_Actividad|Title=Realiza el siguiente ejercicio| | ||
+ | Dado el siguiente esquema E/R, | ||
+ | obtén el modelo de tablas corresondiente | ||
+ | [[Archivo:Ejercicio_MR_1.png]] | ||
+ | }} | ||
+ | }} | ||
+ | {{MRM_Clave|Title=Interrelaciones M:N| | ||
+ | *En este caso se '''''generamos una nueva relación o tabla''''' | ||
+ | *La nueva tabla recibe propagada las claves de las entidades relacionadas | ||
+ | *Si la interrelacińo tuviera atributos, éstos formarían parte de la nueva relación o tabla | ||
+ | *Cada atributo propagado será una clave extrajera que referenciará a su tabla dónde es clave principal | ||
+ | *La clave de la nueva tabla será el conjunto de los dos atributos | ||
+ | *A veces hay que revisar si es suficiente o hay que añadir más información para la clave | ||
+ | [[Archivo:relaciones_MN2relacional.png]] | ||
+ | {{MRM_Actividad|Title=Realiza el siguiente ejercicio| | ||
+ | Dado el siguiente esquema E/R, | ||
+ | obtén el modelo de tablas corresondiente | ||
+ | [[Archivo:Ejercicio_MR_2.png]] | ||
+ | }} | ||
+ | }} | ||
+ | {{ | ||
+ | MRM_Clave|Title=Interrelaciones 1:1| | ||
+ | *Este es un caso poco frecuente que presenta diferentes opciones de resolución | ||
+ | *Para determinar qué hacer debemos de observar los mínimos, en cuyo caso tenemos tres opciones | ||
+ | #Los dos extremos opcionales | ||
+ | #un extremo opcional y otro obligatorio | ||
+ | #Los dos extremos obligatorios | ||
+ | {{MRM_Clave|Title=1:1 con opcionalidad en un extremo| | ||
+ | *Es este caso propagamos la clave de la entidad con opcionalidad a la entidad obligada | ||
+ | *Además la clave extranjera debe tener una restricción de valor único | ||
+ | [[Archivo:relaciones_112relacional.png]] | ||
+ | }} | ||
+ | {{MRM_Clave|Title=1:1 con opcionalidad en ambos extremos| | ||
+ | *En este caso,para mantener la información, debemos realizar una doble propagación de claves | ||
+ | *En ambos casos, la clave propagada, deberá de tener la restricción de valor único | ||
+ | [[Archivo:relaciones_11_opt2relacional.png]] | ||
+ | }} | ||
+ | {{MRM_Clave|Title=1:1 con obligatoriedad en ambos extremos| | ||
+ | *En este caso conviene jutar las dos entidades en una única tabla o relación juntando los atributos | ||
+ | *La clave será la unión de las dos claves de cada entidad | ||
+ | [[Archivo:realcion_11_obl2relacional.png]] | ||
}} | }} | ||
− | |||
}} | }} |
Última revisión de 07:02 26 abr 2018
Contenido
Nivel Lógico
- A este nivel vamos a usar el modelo relacional
- Es importante tener claro que lo que queremos realizar a este nivel es aplicar una serie de reglas para transformar el modelo entidad/interrelación o modelo de Chen en un modelo relacional
|
- En este nivel hay que estudiar una serie de conceptos sencillos, que convienen dejar claros
Conceptos del nivel lógico: Elementos del modelo
Un dominio es el conjuntos de valores que puede tomar un determinado atributo (campo). de un elemento concreto (tupla o fila) del objeto (relación o tabla).
Dice que el valor que ha de tomar cada atributo (campo) |
Un atributo son cada una de las características o propiedades de los elementos de información (tablas) Se define como el papel que desempeña un determinado dominio en una relación (tabla)
|
Una relación es un conjunto de tuplas del mismo esquema , y un esquema de relación es el esquema de las tuplas que lo forman. Notación : R (A1:D1, A2:D2, ....., An:Dn) define una relación de esquema {(A1,D1),(A2,D2),....,(An,Dn)}. |
Una restricción es una limitación que se va asociar
|
Dice que el valor que ha de tomar cada atributo (campo)
|
|
Para cumplir esta restricción va a haber un conjunto de atributos (1 o más)
|
- Restricción de Integridad Referencial
|
Paso del modelo Entidad/Interrelación al modelo Relacional
Relaciones o tablas Atributos o campos
|
Entidades
Atributos
|
Los atributos multivaluados generarán una nueva tabla o relación.
|
En principio los atributos derivados no se ponen De ellos se debe de realizar un estudio y determinar qué hacer
|
|
Interrelaciones
- A continuación vamos a estudiar las relaciones
consiste en llevar la clave de una tabla (clave principal
|
|
|
|