Este documento describe los conceptos básicos de un modelo entidad-relación para el diseño de bases de datos, incluyendo entidades, atributos, llaves primarias, relaciones, cardinalidad y las tres formas normales. También proporciona algunas buenas prácticas como asegurar que cada tabla tenga una llave primaria, cumpla con las formas normales y se relacione a otras tablas.
1. Base datos I
INFOP/UNITEC
Modelo Entidad-Relacion
Entidades
Son todos los objetos ser representados en el
diagrama. Ej: Tablas
Metadata: Información sobre la información.
Son todos los atributos o cualidades que
describen a una entidad
Metadata de campos
Nombre
Tipo de datos (texto, numérico, fecha,
booleano, etc)
Longitud y/o precisión
Aceptación de valores nulos
Es llave primaria
Valor por omisión
Dominio de datos: Conjunto de reglas o valores
explícitos que delimitan los posibles valores que
un campo acepatrá como válidos
Otros
Utilizando campos de texto
Varchars: Textos de longitud variable que
solamente almacenan la cantidad de caracteres
utilizados
Chars: Textos de longitud fija en donde se
almacenan siempre la cantidad de caracteres
definidos en la longitud expresada en la
metadata del campo independientemente que
se hayan utilizado todos o no
Para campos que estarán recibiendo
actualizaciones de manera constante, como
por ejemplo un campo de Status para un
proceso, se recomienda el uso de chars ya que
el espacio a donde se almacenara el texto ya
queda reservado y no habrá expansión o
compactación de los registros causando asi
menos fragmentación en la base de datos.
Llaves primarias: Son restricciones que se
aplican a una tabla con 3 propósitos
primordiales
Identificar de manera única un registro en la
tabla
Evitar duplicidad
Integridad referencial
Una tabla solo puede contener una llave
primaria, pero esta llave primaria se puede
componer de uno o varios campos
Formas normales: Existen 3 formas normales
que se utilizan comercialmente para fines de
establecer patrones de "buenos diseños" en
nuestras bases de datos relacionales
1era forma normal: Un campo solo puede
contener un tan solo valor y no una lista de
valores
2da forma normal: Un campo no puede ser
definido o depender funcionalmente de solo
una parte de la llave primaria. Todo campo
debe depender totalmente de todos los
campos de la llave primaria
3era forma normal: un campo no puede
depender funcionalmente de otro campo que
no sea llave primaria.
Relaciones
Las entidades como las tablas se relacionan
entre si a través de las llaves primarias y llaves
foráneas
Llaves foráneas: son los campos que hacen
referencia a los campos de la llave primaria de
la tabla a la cual se relacionarán
Una tabla puede tener más de una llave foránea
Cardinalidad de las relaciones
1 a 1: Un registro de una tabla hace referencia a
solamente un registro en la segunda tabla
1 a muchos: Un registro de una tabla hace
referencia a muchos registros en la segunda
tabla. Por ejemplo, el enbezado de una factura
hace referencia a cada una de las líneas del
detalle de la misma factura
Muchos a muchos: Varios registros de una
tabla hacen referencia a varios registros de la
segunda tabla
Algunas buenas prácticas en los diseños E-R
Cumplir con las 3 formas normales
Toda tabla debe de tener su llave primaria
definida
En algunas ocaciones se suele omitir especificar
una llave primaria con propósitos de velocidad,
como por ejemplo en tablas que sirven de logs
en donde no hay ninguna intención de evitar
duplicados de ningún tipo.
Toda tabla debe relacionarse al menos con
alguna otra tabla. Excepciones a la regla
pueden ser tablas de configuración del sistema
que no tienen nada que ver con el tema
principal de la base de datos
Verificar que las consultas o requerimientos de
información se pueden satisfacer y tratar de
adelantarse a estos requerimientos
Referencias Adicionales
Fundamentos de Bases de Datos 5ta edición
Silberschatz, Abraham Korth, Henry Sudarshan
McGraw-Hill
Diseño de bases de datos relacionales
Miguel Sosa Flores
Manuel López Vásquez
El Cid Editor