Planificación de las bases de datos
Cómo es fácil intuir una correcta planificación de las bases de datos antes de comenzar a crearla nos ahorrará muchos problemas y dolores de cabeza.. O de lo contrario podemos encontrarnos con datos duplicados, con relaciones inconsistentes, o hasta con la imposibilidad de obtener informes fiables.
El primer paso es de terminar exactamente para que vamos a emplear la información de la tabla y añadir los campos que nos ayuden a obtener y manejar esa información. Si no se tiene claro este punto los problemas de la tabla ira aumentando según vayamos avanzando en su desarrollo, hasta que tengamos que volver a diseñar su estructura.
Por ejemplo la tabla de clientes. En ella debe estar todo lo relacionado con los datos esenciales que necesitemos de los clientes, pero ningún otro.
Es decir lo necesario para saber quien, y como contactar con él.
Puede parecer a simple vista que también necesitaríamos saber qué compró, cuánto dinero pagó, quién le atendió, etc... pero esos datos no están relacionados exclusivamente con el cliente, ya que también están relacionado con la tabla de artículos (qué compró) y con la tabla de facturación (cuánto pagó). Si se añadiera aquí esta información tendríamos esos datos duplicados en las otras tablas. Y eso es síntoma de que no esta bien diseñada nuestra tabla.
Uno de los problemas de tener en las manos una herramienta tan potente y versátil como Access es que prácticamente se puede hacer de todo, eso incluye diseñar una tabla con los campos que deseemos, incluso aunque no sea de la mejor más eficiente, y a veces es posible que solo nos percatemos de que la tabla esta mal diseñada cuando obtengamos un error en algún informe.
Pero si seguimos estos pasos lograremos construir tablas bien diseñadas
El siguiente paso es decidir los campos de la tabla que estamos diseñando. Puede parecer que la elección de los campos es sencilla una vez que tenemos definida la función de la tabla, pero este es un punto delicado.
Por ejemplo en nuestra tabla clientes, sabemos que queremos tener almacenado, su nombre, dirección y teléfono. ¿Son esos tres, realmente, los campos que va a tener nuestra tabla?
Podemos ver que hemos separado los campos "Nombre" y "Apellidos", y también el campo "dirección" y "Código postal". ¿Por qué lo hemos hecho?. Para poder ordenarlos y agrupar los registros por cada campo. Si no separásemos el nombre en los campos "Nombre" y "Apellidos" no podríamos ordenarlos por sus apellidos. ¿Y en el caso del campo dirección?. Es conveniente separar el código postal de la dirección porque cuando realicemos informes o envíos postales necesitaremos ordenarlos por el campo código postal, sin tener en cuenta su dirección.
Para determinar correctamente los campos no hay reglas concretas, la experiencia es la mejor ayuda, aunque hay algunas costumbres que pueden ayudar especificar mejor los campos, como por ejemplo: preguntarte si vas a necesitar acceder a alguna parte del campo en concreto, si la respuesta es si, entonces debes dividirlo en varios campos.
Crea todos los campos que se necesiten pero que todos los campos tengan una estrecha relación con el concepto de la tabla, por ejemplo en la tabla de clientes no es necesario introducir datos sobre los vendedores. Crea otra tabla específicamente para ellos.
Y por ultimo es innecesario crear campos que se calculen a partir de otros. Es mas útil y exacto calcularlo cuando se necesite. Por ejemplo en el caso de que tengamos la fecha de nacimiento, no necesitamos tener otro campo para la edad, es más eficiente calcularlo cuando se requiera y no hará falta actualizarlo cada año.