El diseño de una base de datos es de suma importancia ya que de ello dependerá que nuestros datos estén correctamente actualizados y la información siempre sea exacta. Si hacemos un buen diseño de base de datos podremos obtener reportes efectivos y eficientes.
En esta ocasión proporcionaré algunas recomendaciones a seguir al momento de realizar el diseño y modelo de una base de datos. No importa la herramienta que se utilice para almacenar la información, puede ser Excel, Access o sistemas gestores de bases datos más complejos como Microsoft SQL Server pero siempre debes diseñar y modelar una base de datos antes de tomar la decisión de crearla.
Conceptos básicos sobre el diseño de bases de datos
En cualquier base de datos la información está almacenada en tablas las cuales a su vez están formadas por columnas y filas. La base de datos más simple consta de una sola tabla aunque la mayoría de las bases de datos necesitarán varias tablas.
Las filas de una tabla también reciben el nombre de registros y las columnas también son llamadas campos.
Diseñar y modelar una base de datos
Al diseñar una base de datos determinamos las tablas y campos que darán forma a nuestra base de datos. El hecho de tomarnos el tiempo necesario para identificar, organizar y relacionar la información nos evitará problemas posteriores.
Es por eso que para diseñar una base de datos es necesario conocer la problemática y todo el contexto sobre la información que se almacenará en nuestro repositorio de datos. Debemos determinar la finalidad de la base de datos y en base a eso reunir toda la información que será registrada. A continuación los 5 pasos esenciales para realizar un buen diseño y modelo de una base de datos.
1. Identificar las tablas
De acuerdo a los requerimientos que tengamos para la creación de nuestra base de datos, debemos identificar adecuadamente los elementos de información y dividirlos en entidades (temas principales) como pueden ser las sucursales, los productos, los clientes, etc.
Para cada uno de los objetos identificados crearemos una tabla. Si en una base de datos los objetos principales son los empleados y los departamentos de la empresa entonces tendremos una tabla para cada uno de ellos. Si en otra base de datos los objetos principales son los libros, autores y editores entonces necesitaremos tres tablas en nuestra base de datos.
2. Determinar los campos
Cada entidad representada por una tabla posee características propias que lo describen y que lo hacen diferente de los demás objetos. Esas características de cada entidad serán nuestros campos de la tabla los cuales describirán adecuadamente a cada registro. Por ejemplo, una tabla de libros impresos tendrá los campos ISBN, título, páginas, autor, etc.
3. Determinar las llaves primarias
Una llave primaria es un identificador único para cada registro (fila) de una tabla. La llave primaria es un campo de la tabla cuyo valor será diferente para todos los registros. Por ejemplo, para una tabla de libros, la llave primaria bien podría ser el ISBN el cual es único para cada libro. Para una tabla de productos se tendría una clave de producto que los identifique de manera única.
4. Determinar las relaciones entre tablas
Examina las tablas creadas y revisa si existe alguna relación entre ellas. Cuando encontramos que existe una relación entre dos tablas debemos identificar el campo de relación. Por ejemplo, en una base de datos de productos y categorías existirá una relación entre las dos tablas porque una categoría puede tener varios productos asignados. Por lo tanto el campo con el código de la categoría será el campo que establezca la relación entre ambas tablas.
5. Identificar y remover datos repetidos
Finalmente examina cada una de las tablas y verifica que no exista información repetida. El tener información repetida puede causar problemas de consistencia en los datos además de ocupar más espacio de almacenamiento.
Por ejemplo, una tabla de empleados que contiene el código del departamento y el nombre del departamento comenzará a repetir la información para los empleados que pertenezcan al mismo departamento.
¿Qué pasaría si el nombre del departamento cambiara de Informática a Tecnología? Tendríamos que ir registro por registro modificando el nombre correspondiente y podríamos dejar alguna incongruencia en los datos. Una mejor solución es tener una tabla exclusiva de departamentos y solamente incluir la clave del departamento en la tabla de empleados.
De esta manera dejamos de repetir el nombre del departamento en la tabla de empleados y ahorramos espacios de almacenamiento. Y en caso de un cambio de nombre de departamento solamente debemos realizar la actualización en un solo lugar.
El diseño de bases de datos es un tema muy extenso y es difícil considerar todos sus aspectos en un solo artículo. Sin embargo, al seguir estas 5 reglas básicas del diseño de bases de datos estaremos dando un paso hacia adelante en las buenas prácticas de creación y gestión de bases de datos.