En Pizarras y Pizarrones hemos desarrollado un trabajo de campo cuyo objetivo es analizar las preferencias en lecto-escritura de nuestros lectores, así como las nuevas formas de enseñanza y aprendizaje. Les hemos pedido su colaboración para completar una pequeña encuesta anónima que como máximo les insumiría 10 minutos. Agradecemos su participación! La encuesta cerró el 31-08-17 y en unos pocos días publicaremos sus resultados...

lunes, 4 de marzo de 2013

Diseñar una base de datos

Autoras/es: Carlos F. Mur
(Fecha original del artículo: Febrero 2013) 

base12 Un buen diseño de base de datos garantiza su fácil mantenimiento. Los datos se almacenan en tablas y cada tabla contiene datos acerca de un tema, por ejemplo, clientes. Por tanto, cuando se actualiza una parte de los datos concreta, como una dirección, se hace en un solo lugar, pero ese cambio aparece automáticamente en toda la base de datos.
Una base de datos bien diseñada suele contener distintos tipos de consultas que muestran la información necesaria. Una consulta puede mostrar un subconjunto de datos, como todos los clientes de Londres, o combinaciones de datos de tablas diferentes, como la información de pedidos combinada con la información de clientes.
Esta consulta recupera la información de Id. de pedido, nombre de la compañía, ciudad y fecha de entrega para los clientes de Londres cuyos pedidos se entregaron en el mes de abril.
Los resultados que se desea obtener de una base de datos , es decir, los formularios y las páginas de acceso a datos (página de acceso a datos: página Web, publicada desde Access, que tiene una conexión a una base de datos. En una página de acceso a datos, puede ver, agregar, editar y manipular los datos almacenados en la base de datos. Una página puede incluir también datos de otros orígenes de datos, como Excel.) que se desea utilizar, y los informes que se desea imprimir , no siempre ofrecen una pista acerca de la estructura de las tablas de la base de datos, ya que normalmente los formularios, los informes y las páginas de acceso a datos se basan en consultas en lugar de basarse en tablas.
Antes de utilizar Microsoft Access para crear tablas, consultas, formularios y otros objetos definitivos, se recomienda realizar un esquema en papel y trabajar el diseño primero. También puede examinar bases de datos bien diseñadas que sean similares a la suya, o puede abrir la ventana Relaciones (ventana Relaciones: ficha de objeto en la que se pueden ver, crear y modificar las relaciones entre tablas y consultas.) de la base de datos de ejemplo Neptuno para examinar su diseño.
Siga estos pasos básicos a la hora de diseñar su base de datos.
El primer paso para diseñar una base de datos es determinar su finalidad y cómo se va a utilizar.
  • Hable con los demás usuarios que utilizarán la base de datos. Piensen detenidamente en las preguntas que desean que responda la base de datos.
  • Realice bocetos de los informes que desea que genere la base de datos.
  • Reúna los formularios que utiliza actualmente para registrar los datos.
En cuanto determine la finalidad de su base de datos, comenzarán a surgir ideas acerca de la información que desea obtener de ella. Entonces ya puede determinar qué hechos necesita almacenar en la base de datos y a qué tema corresponde cada hecho. Estos hechos se corresponden con los campos (columnas) de la base de datos y los temas a los que pertenecen los hechos son las tablas.
Cada campo es un hecho acerca de un tema determinado. Por ejemplo, puede que sea necesario almacenar los hechos siguientes acerca de los clientes: nombre de la organización, dirección, ciudad, estado o provincia, y número de teléfono. Deberá crear un campo independiente para cada uno de estos hechos. A la hora de determinar qué campos son necesarios, tenga presentes estos principios de diseño:
  • Incluya toda la información que necesite.
  • Almacene información en partes lógicas que sean lo más pequeñas posibles. Por ejemplo, los nombres de los empleados suelen repartirse en dos campos, Nombre y Apellidos, para que sea más fácil ordenar los datos por Apellidos.
  • No cree campos para datos que estén formados por listas de múltiples elementos. Por ejemplo, si en una tabla Proveedores se crea un campo Productos que contenga una lista con los productos que se reciben del proveedor separados mediante una coma, después será más difícil encontrar los proveedores que suministren un producto determinado.
  • No incluya datos derivados ni calculados (datos que son el resultado de una expresión (expresión: cualquier combinación de operadores matemáticos o lógicos, constantes, funciones y nombres de campos, controles y propiedades que evalúa a un solo valor. Las expresiones pueden realizar cálculos, manipular caracteres o probar datos.)). Por ejemplo, si tiene un campo PrecioUnitario y un campo Cantidad, no cree otro campo que multiplique los valores de ambos.
  • No cree campos que sean similares entre sí. Por ejemplo, si en una tabla Proveedores crea los campos Producto1, Producto2 y Producto3, será más difícil encontrar todos los proveedores que suministran un producto determinado. Asimismo, será necesario cambiar el diseño de la base de datos si un proveedor suministra más de tres productos. Sólo necesitará un campo para los productos si coloca dicho campo en una tabla Productos en lugar de en una tabla Proveedores.
Cada tabla debe contener información sobre un asunto. Su lista de campos le dará pistas acerca de las tablas que necesita. Por ejemplo, si tiene un campo FechaContratación, su asunto es un empleado y, por tanto, pertenece a la tabla Empleados. Puede tener una tabla para Clientes, una tabla para Productos y una tabla para Pedidos.
A la hora de decidir a qué tabla pertenece cada campo, tenga presentes estos principios de diseño:
  • Agregue el campo a una sola tabla.
  • No agregue el campo a una tabla si, como resultado, la misma información va a aparecer en varios registros de esa tabla. Si determina que un campo de una tabla va a contener mucha información duplicada, seguramente ese campo se encuentra en una tabla que no le corresponde.
Por ejemplo, si coloca el campo que contiene la dirección de un cliente en la tabla Pedidos, probablemente esa información se va a repetir en más de un registro, porque seguramente el cliente va a realizar más de un pedido. Sin embargo, si coloca el campo de dirección en la tabla Clientes, aparecerá una sola vez. A este respecto, una tabla de una base de datos de Microsoft Access (base de datos de Microsoft Access: colección de datos y objetos (como tablas, consultas o formularios), que está relacionada con un tema o propósito concreto. es diferente de una tabla de base de datos de archivos simples, como una hoja de cálculo.
Cuando cada elemento de información se almacena una sola vez, se actualiza en un solo lugar. Esto resulta más eficiente y elimina la posibilidad de que existan entradas duplicadas que contengan información diferente.
Para que Microsoft Access conecte información almacenada en tablas distintas (por ejemplo, para conectar un cliente con todos los pedidos del cliente) , cada tabla de la base de datos debe incluir un campo o un conjunto de campos que identifiquen de forma exclusiva cada registro de la tabla. Este campo o conjunto de campos se denomina clave principal (clave principal: uno o más campos (columnas) cuyos valores identifican de manera exclusiva cada registro de una tabla. Una clave principal no puede permitir valores Nulo y debe tener siempre un índice exclusivo. Una clave principal se utiliza para relacionar una tabla con claves externas de otras tablas.).
Puede resultar útil ver las relaciones de una base de datos existente bien diseñada, como la base de datos de ejemplo Neptuno.
Una vez diseñadas las tablas, los campos y las relaciones (relación: asociación que se establece entre campos comunes (columnas) en dos tablas. Una relación puede ser uno a uno, uno a varios o varios a varios.) que necesita, es el momento de estudiar el diseño y detectar los posibles fallos. Es más sencillo cambiar el diseño de la base de datos ahora que una vez que haya rellenado las tablas con datos.
Utilice Microsoft Access para crear las tablas, especificar relaciones entre las tablas e introducir suficientes datos de ejemplo en las tablas para poder comprobar el diseño. Para probar las relaciones de la base de datos, compruebe si puede crear consultas para obtener las respuestas que desea. Cree bocetos de los formularios e informes, y compruebe si muestran los datos esperados. Busque duplicaciones de datos innecesarias y elimínelas.
Cuando considere que la estructura de las tablas cumple los principios de diseño descritos anteriormente, es el momento de comenzar a agregar los datos existentes a las tablas. Después, puede crear otros objetos de base de datos (consultas (consulta: pregunta sobre los datos almacenados en las tablas o solicitud para llevar a cabo una acción en los datos. Una consulta puede unir los datos de varias tablas para que sirvan como origen de datos para un formulario o informe.)formularios (formulario: objeto de base de datos de Access en el que se colocan controles para realizar acciones o para especificar, mostrar y editar datos en los campos.)informes (informe: objeto de base de datos de Access que puede imprimir, el cual contiene información a la que se ha dado formato y se ha organizado de acuerdo con sus especificaciones. Ejemplos de informes: resúmenes de ventas, listas de teléfonos y etiquetas postales.)páginas de acceso a datos (página de acceso a datos: página Web, publicada desde Access, que tiene una conexión a una base de datos. En una página de acceso a datos, puede ver, agregar, editar y manipular los datos almacenados en la base de datos. Una página puede incluir también datos de otros orígenes de datos, como Excel.)macros (macro: acción o conjunto de acciones utilizados para automatizar tareas.) y módulos (módulo: colección de declaraciones, instrucciones y procedimientos almacenados juntos como una unidad con nombre. Existen dos tipos de módulos: módulos estándar y módulos de clase.)).
Para obtener más información sobre cómo se diseña una base de datos en Access, lea el artículo de Knowledge Base Dónde encontrar información acerca del diseño de una base de datos en Access.

No hay comentarios: