Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Modelo Relacional de base datos, Esquemas y mapas conceptuales de Física

trato de los modelos de base de datos

Tipo: Esquemas y mapas conceptuales

2012/2013

Subido el 23/09/2021

eduardo-rivera-31
eduardo-rivera-31 🇲🇽

2 documentos

1 / 19

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
TEMA 3 DISEÑO LÓGICO GRUPO: 02
M.I.A Martha López Pelcastre Página 1 de 19
Objetivo
El alumno explicará y comprenderá las características y elementos que integran al Modelo
Relacional aplicados al diseño lógico de bases de datos.
Una vez que se realizó el diseño conceptual, se realiza la trasformación al modelo entidad relación
al modelo relacional.
Notas:
La lógica de predicados es utilizada para expresar el significado de un amplio alcance de
proposiciones en matemáticas y ciencias de cómputo de manera que nos permite razonar y
explorar relaciones entre los objetos
Todos los hombres son mortales,
Sócrates es hombre,
luego Sócrates es mortal
Calculo relacional
Es un lenguaje de consultas para las bases de datos relacionales que describe la respuesta deseada
Lenguaje basado en el cálculo de predicados de primer orden
No procedimental, se expresa qué se quiere obtener y no cómo
Relación: predicado
Seleccionar aquellas tuplas cuyo predicado es verdadero
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13

Vista previa parcial del texto

¡Descarga Modelo Relacional de base datos y más Esquemas y mapas conceptuales en PDF de Física solo en Docsity!

Objetivo El alumno explicará y comprenderá las características y elementos que integran al Modelo Relacional aplicados al diseño lógico de bases de datos. Una vez que se realizó el diseño conceptual, se realiza la trasformación al modelo entidad relación al modelo relacional. Notas: La lógica de predicados es utilizada para expresar el significado de un amplio alcance de proposiciones en matemáticas y ciencias de cómputo de manera que nos permite razonar y explorar relaciones entre los objetos Todos los hombres son mortales, Sócrates es hombre, luego Sócrates es mortal Calculo relacional Es un lenguaje de consultas para las bases de datos relacionales que describe la respuesta deseada Lenguaje basado en el cálculo de predicados de primer orden No procedimental, se expresa qué se quiere obtener y no cómo Relación: predicado Seleccionar aquellas tuplas cuyo predicado es verdadero

Predicado permite operaciones {=, <>, <, >, <=, >=} entre una variable y una constante o entre dos variables El cálculo relacional se apoya en algún lenguaje de interrogación de bases de datos como puede ser el SQL. Ejemplo: Dada la relación: ESTUDIANTE = {NUMCUENTA, NOMBRE, EDAD, CORREO, ESTADONACIMIENTO} Seleccionar estudiantes que NACIERON EN Oaxaca y tienen más de 23 años ESTUDIANTE: ESTADONACIMIENTO=’OAXACA’ AND EDAD> Algebra relacional Es un lenguaje de consulta procedural mediante conjunto de operaciones sobre relaciones Cada operación toma una o más relaciones como operandos y produce una relación como resultado Ambos métodos logran los mismos resultados. Los dos lenguajes son lógicamente equivalentes. Esto significa que cualquier consulta que pueda resolverse en un lenguaje puede resolverse en el otro. Estructura lógica de los datos, representada por relaciones (tabla) BASE DE DATOS = conjunto de relaciones ENTIDAD = estructura fundamental, tabla bidimensional

(nomenclatura relacional) (nomenclatura visual o de tabla) (nomenclatura ficheros) relación = tabla = fichero tupla = fila = registro atributo = columna = campo grado = nº de columnas = nº de campos cardinalidad = nº de filas = nº de registros

Propiedades de las relaciones

tablas

Cada tabla debe tener un nombre distinto Cada atributo de la tabla solo puede tener un valor en cada tupla Cada atributo tiene un nombre distinto en cada tabla (aunque puede coincidir en tablas distintas) Cada tupla es única (no hay tuplas duplicadas) El orden de los atributos no importa El orden de las tuplas no importa

TIPOS DE RELACIONES (TABLAS)

Persistentes. Son las tablas que crean los usuarios (normalmente los administradores). Sólo pueden ser borradas por los administradores Se dividen en tres tipos: o Bases. Son tablas independientes. Se crean indicando su estructura y después se les añaden los datos. Cuando alguien habla de tablas, se refiere a este tipo de tablas. Son el fundamento del modelo relacional o Vistas. Contienen una instrucción (normalmente en lenguaje SQL) la cual provoca una consulta sobre los datos de las tablas base, haciendo que se muestren los datos que cumplen las condiciones especificadas en dicha. Si los datos de las tablas base cambian, los de las vistas que utilizan esos datos también cambian. o Instantáneas o vistas materializadas. Son vistas (es decir, consultas) que además de almacenar la instrucción SQL, almacenan una copia de los datos que muestra. De modo que la siguiente vez que usemos la instantánea, utilizará la copia de los datos (no leerá los datos originales). Las instantáneas, a diferencia de las vistas, no siempre muestran los datos actualizados. Las instantáneas actualizan los datos, refrescando el resultado cada cierto tiempo. La ventaja es que son más veloces que las vistas al no tener que acudir a los datos base; la parte mala, es que los datos que muestran pueden ser obsoletos (ya que pueden haber variado en las tablas base originales). No persistentes (Temporales). Son tablas que se eliminan automáticamente por el sistema. Las utiliza el SGBD como almacén intermedio de datos (resultados de consultas, por ejemplo) para acelerar la ejecución del sistema o como almacén auxiliar para instrucciones complejas. Hay tablas temporales de tipo base, vista o instantáneas; al igual que ocurre con las persistentes. ATRIBUTOS (CARACTERÍSTICAS)

  • Restricción : Una regla que restringe los valores en una base de datos.
  • Valor por defecto: Un valor que se inserta automáticamente si el usuario no especifica la entrada.
  • Valor nulo : Ausencia de valor para un campo en un registro Si el atributo de una entidad es opcional, el campo debe definirse como NULL. NULL no es equivalente a 0, “” (cadena vacía), “ ” (espacio) Es invalido hacer comparaciones empleando os valores anteriores. Para ello existen los operadores IS NULL, IS NOT NULL
  • Dominio , indica qué valores pueden ser asumidos por una columna de la relación. A menudo un dominio se define a través de la declaración de un tipo para el atributo (por ejemplo, diciendo que es una cadena de diez caracteres), pero también es posible definir
REGLAS DE INTEGRIDAD

» Entidad , ningún atributo que forme parte de la llave primaria puede tomar un valor nulo. » Referencial , no deben existir llaves foráneas sin concordancia o NO deben tener valores nulos. RESTRICCIONES Se trata condiciones de obligado cumplimiento para que un dato forme parte de una tabla Inherentes Son aquellas que no requieren que se establezcan de forma explícita, sino que son definidas por el propio hecho de que la base de datos sea relacional. Las más importantes son: ✓ No puede haber dos filas iguales ✓ El orden de las filas no es significativo ✓ El orden de las columnas no es significativo ✓ Cada atributo sólo puede tomar un valor en la intersección entre fila y columna Semánticas El modelo relacional permite incorporar restricciones personales a las tablas. Son las más importantes y son fundamentales para que la información de la base de datos sea coherente y eficiente. Principales restricciones semánticas.

  • Restricción de clave principal o restricción de clave primaria (primary key) Toda tabla requiere de un identificador o clave principal para asegurar que todas las filas son diferentes en cada tabla. Esta restricción prohíbe que los atributos que forman la clave primaria puedan contener valores repetidos en distintas filas. Los campos que actúen como PK no deben estar vacíos (nulos) en alguna tupla. El DBMS implementa restricción de integridad NOT NULL La primary key debe ser un campo cuyo valor nunca debe ser modificado. Modificar la PK implica modificar los valores de todas las referencias. El mejor desempeño de la tabla se obtiene cuando la PK es un número, valores consecutivos, iniciando en uno. El DBMS implementa índice de tipo UNIQUE. Si se desea obtener este beneficio, la PK de una tabla puede ser formada por un nuevo atributo que cumpla con estas características. A este tipo de llave primaria se le conoce como llave primaria artificial.
  • Restricción de unicidad (UNIQUE) Indica al DBMS que los valores de los atributos marcados de esa forma, no pueden repetirse en distintas filas. Es decir, en esa columna los valores deben ser distintos para cada fila, o bien quedar vacíos.
  • Obligatoriedad (NOT NULL) Prohíbe que el atributo marcado de esta forma quede vacío (es decir impide que pueda contener el valor nulo, NULL) en alguna fila.
  • Restricciones de referencia o integridad referencial, clave foránea (FOREIGN KEY) FK Se utiliza para enlazar relaciones (tablas) en una base de datos. La integridad referencial indica que los valores de la clave ajena en la relación que referencia deben corresponderse con los valores existentes de la clave primaria definida. Una fk es un campo dentro de la tabla B que hace referencia a la tabla A. La tabla A es comúnmente llamada padre, donde se origina la FK y la tabla B hija y es la que recibe el campo. Generalmente el nombre del atributo de la FK coincide con el nombre de la PK de la tabla padre. Si la PK de la tabla A es compuesta, ambos campos se agregan a la tabla B como FK La clave foránea puede formar parte o ser PK y FK a la vez de la tabla B

2. Acceso garantizado Todo dato (valor en una tabla) debe ser accesible mediante una combinación de un nombre de tabla, un valor de su clave primaria y el nombre de una columna. Es una forma de insistir en la obligatoriedad de la clave primaria. 3. Tratamiento sistemático de los valores nulos. El DBMS debe permitir el tratamiento adecuado de estos valores. Esto significa que los valores nulos se manejan como una información más de la base de datos; se podrá utilizar como información en sí y por lo tanto operar con estos valores no producirá error alguno. 4. Catálogo en línea basado en el modelo relacional. El catálogo en línea es otro nombre para el diccionario de datos. Esta regla indica que los metadatos (información del modelo relacional) deben de ser accesibles usando un lenguaje relacional estándar. Es decir, la forma de acceder a los metadatos es la misma que la forma de acceder a los datos. Dicho de otra forma, también los metadatos se almacenan en tablas. 5. Sub-lenguaje de datos completo Debe existir un lenguaje que permita un completo manejo de la base de datos (definición de datos, definición de vistas, manipulación de datos, restricciones de integridad, autorizaciones y gestión de transacciones). 6. Actualización de vistas. El SGBD debe encargarse de que las vistas muestren la última información. Cualquier vista que es actualizable debe hacerse a través del sistema. 7. Inserciones, modificaciones y eliminaciones de alto nivel. Cualquier operación de modificación debe actuar sobre conjuntos de filas o registros, nunca deben actuar registro a registro. 8. Independencia física de los datos Cualquier cambio en la ubicación física de los datos, los querys no deben requerir modificaciones por dichos cambios en la ubicación física.

9. Independencia lógica de los datos Los programas de aplicación no deben verse afectados por cambios realizados en las tablas que estén permitidos teóricamente y que preserven la información. Ejemplo; insertar una columna. 10. Independencia de integridad. Las restricciones de integridad deben almacenarse en la base de datos (en el diccionario de datos), no en los programas de aplicación. Eso permite que dichas reglas sobre los datos se cumplan siempre independientemente de la forma de acceder a los mismos. 11. Independencia de la distribución. El lenguaje de manipulación de datos (DML) debe permitir que sus instrucciones funcionen igualmente en una base de datos distribuida que en una que no lo es. Es decir, los programas y los usuarios no deben verse afectados por cambios en la ubicación o distribución física de los datos. 12. No subversión. Si el SGBD dispone de un lenguaje de bajo nivel (normalmente será un lenguaje de tipo procedimental) para trabajar en la base de datos, este lenguaje no se puede saltar ninguna regla de las anteriores. 0. Regla básica Cualquier sistema que se anuncie como sistema gestor de bases de datos relacionales debe ser capaz de gestionar por completo las bases de datos utilizando sus capacidades relacionales. (DDL, DML) DEFINICIONES Esquema Un esquema contiene la definición de una estructura (generalmente relaciones “tablas” de una base de datos), determina la identidad de la relación y qué tipo de información podrá ser almacenada dentro de ella. Todo esquema constará de: o Nombre de la relación (su identificador). o Nombre de los atributos (o campos) de la relación y sus dominios. o Sus relaciones

A el nombre de los atributos que la componen D los dominios de los que toman valores los atributos I restricciones de integridad TRANSFORMACIÓN AL MODELO RELACIONAL A PARTIR DEL MODELO ENTIDAD-RELACIÓN Para transformar un modelo entidad-relación a modelo relacional seguiremos las siguientes reglas:

1. Entidad fuerte Toda entidad fuerte se transforma en una relación (tabla): ✓ Se conservan los atributos y la llave primaria ✓ En llaves candidatas se establece restricción de unicidad ✓ Atributos compuestos se colocan en forma individual ✓ Atributos multivalorados; se crea una nueva relación propagando la llave primaria de la relación como foránea a la nueva relación. ✓ Atributos derivados o calculados se establecen como atributos calculados (pueden no colocarse) ✓ Se establecen restricciones sobre atributos Simbología a utilizar PRIMARY KEY (PK) UNIQUE (U) FOREIGN (FK) CHECK(CK) Calculados (C) Discriminantes (D) Opcional (N) Ejemplo del esquema profesor: PROFESOR={clave (PK), nombre, paterno, materno(N), rfc(U), edad(C)*CS1} EMAILPROF={idEmail (pk), email(U), clave(FK)} *CS1: Se obtiene del rfc del profesor

Representación de entidades

Diseño conceptual Diseño lógico Crow’s Foot e IDEF1X
Entidad Tabla
o Se emplea un rectángulo con el nombre
de la entidad en su interior iniciando en
mayúsculas, sustantivo en singular
o Se emplea notación Camel Case para
separar palabras.
o El nombre se escribe arriba del
rectángulo en mayúsculas.
o Si el nombre de la tabla es compuesto,
se emplea “_” (guion bajo) para separar
palabras.
o En el primer rectángulo se enlistan los
atributos que formarán parte de la PK
o En el segundo rectángulo se enlistan los
atributos que no forman parte de la PK.

Representación de atributos

Diseño conceptual Diseño lógico Crow’s Foot e IDEF1X
Atributo Atributo
o Los atributos se representan por óvalos.
o El atributo que representa a la PK se
subraya.
o Si existen llaves candidatas se marcan con
una “X”
o La PK aparece en el primer rectángulo,
observar el ícono de una “Llave”.
o Al igual que el nombre, se emplea “_”
para separar palabras, todo en
mayúsculas.
o Por claridad es recomendable agregar
el tipo de dato de cada atributo y el
constraint NULL/NOT NULL.
o Por convención el nombre del atributo
que representa a la PK es
<NOMBRE_TABLA>_ID

3. Relaciones 1:1 La llave primaria de una entidad se propaga a la otra entidad como llave foránea con la restricción de unicidad, dependiendo de la cardinalidad mínima. Si la cardinalidad mínima es cero, se pasa el atributo de la entidad de cardinalidad uno hacía la de cardinalidad cero, si en ambas es la misma cardinalidad, dependerá del contexto. m:1 ó 1:m La llave primaria de la entidad que tiene la cardinalidad uno se propaga a la relación de muchos como llave foránea. m: m Se genera una nueva relación que contendrá la llave primaria de cada una de las entidades que une, pero como llaves foráneas y juntas como llave primaria, además de sus atributos propios (descriptivos) de la relación. Para las relaciones (1:1, 1:m, m:1) que contengan atributos descriptivos, se tienen dos opciones: 1. Generar una nueva relación que contendrá la llave primaria de cada una de las entidades que une como llaves foráneas, además de sus atributos descriptivos, conservando la unicidad en la nueva relación. 2. Propagar la llave primaria de la entidad uno junto con todos los atributos de la relación a la entidad m 4. Relaciones recursivas La llave primaria de la entidad pasa como llave foránea de la misma entidad. Ejemplo: EMPLEADO= { claveEmp(PK), nombreEmp, claveSup(FK) }

Representación de relaciones Niveles de dependencia ◦ Relación suave – no identificativa ◦ Relación fuerte – identificativa Relación no-identificativa ◦ Empleada para representar relaciones 1:M. ◦ A veces se utiliza para relaciones 1:1 y M:M ◦ Representada con líneas punteadas ◦ La PK de la tabla padre pasa como un campo más en la tabla hijo, es decir, la FK no forma parte de la PK en la tabla hijo Ejemplo: Sucursal y Ciudad (1:M)

  • Una sucursal se ubica en una ciudad. (1:1)
  • En una ciudad pueden existir varias sucursales. (1:M) En una relación 1:M, la FK debe quedar del lado “Muchos”. Observando el ejemplo, la FK debe quedar del lado de la entidad Sucursal. Si imaginamos la información tendremos que: o Cada registro de sucursal, se asocia con un registro de ciudad. o Cada registro de ciudad puede estar asociado con varios registros de sucursal Relación identificativa ▪ Empleada para representar relaciones 1:1 y M:M ▪ Representada con líneas continúas. ▪ La PK de la tabla padre pasa como FK y PK en la tabla hijo. ▪ Si la tabla hija no tiene una PK propia, la PK de la tabla padre y de la tabla hija es compartida. Por lo anterior y por la definición de PK, la relación entre ambas tablas es 1:1, un registro de la tabla padre, solo puede asociarse con un registro de la tabla hija. ▪ Al compartir la PK con la tabla hija, está también identificará a cada registro de la tabla hija. Por tal razón a este tipo de relaciones se les conoce como identificativas.

Representación de relaciones con cardinalidades, notación IDEF1X