
Es muy posible que ya haya utilizado aplicaciones de hojas de cálculo como Calligra Sheets, LibreOffice Calc o Microsoft® Excel. Si es así, probablemente se preguntará: ya que tanto las hojas de cálculo como las bases de datos tienen tablas, ¿por qué debería utilizar una base de datos y no una hoja de cálculo?
Al comparar las hojas de cálculo y las bases de datos se pueden encontrar las siguientes cuestiones que se verán en mayor detalle después.
Excediendo gradualmente la capacidad de un teléfono móvil, expanda su tabla Contactos
añadiendo una columna (campo) Dirección
. Añada más números de teléfono (oficina, hogar) para cada persona y añada apellidos a los nombres. Para hacerlo más sencillo, supondremos lo siguiente:
La tabla está limitada a dos personas (obviamente, podrían ser cientos e incluso miles en una base de datos real)
Hay dos personas con el mismo nombre y apellido
Tabla 6.2. Tabla de contactos
Nombre y apellidos | Tel | Dirección |
---|---|---|
Juana Salgado |
799 23 43 12 |
Calle Larga 1, Córdoba |
Adán García |
711 19 77 21 |
Mérida, Paseo Marítimo 5 |
Juana Salgado |
110 98 98 00 |
Calle Larga 1 |
Salgado Juana |
312 43 42 22 |
Sevilla, Calle Larga 1 |
ADÁN García |
231 83 02 04 |
Paseo Marítimo 5, Mérida |
Una tabla así puede existir tanto en una hoja de cálculo como en una base de datos. Utilizar una hoja de cálculo es muy fácil, por supuesto. ¿Qué problemas hay en esta fase?
Suponga que está utilizando una hoja de cálculo y que necesita cambiar la dirección de al menos una persona. Tiene un pequeño problema: tiene que cambiar la dirección en muchas filas. Por ejemplo, Juana aparece en tres filas. Pero aparecerá un problema de verdad si olvida cambiar una de las filas - la dirección asignada a esta persona se volverá ambigua, y por tanto sus datos perderán integridad.
Además, no hay una forma sencilla de eliminar una única persona de la tabla, porque tiene que borrar todas las filas relativas a esa persona.
Está directamente conectado con el problema anterior. En los campos «nombre» y «apellido» y «dirección» se ha introducido el mismo dato varias veces. Esto es típico del inefectivo modo de las hojas de cálculo de almacenar los datos puesto que la base de datos crece innecesariamente, y por tanto requiere más recursos del equipo (un tamaño mayor de los datos y un acceso más lento).
¿Cómo puede solucionar estos problemas con una base de datos? Puede dividir la información en trozos más pequeños creando una tabla adicional Personas
con solo dos columnas: Nombre y apellido
y Dirección
:
Tabla 6.3. Tabla de personas
Nombre y apellidos | Dirección |
---|---|
Juana Salgado |
Calle Larga 1, Córdoba |
Adán García |
Paseo Marítimo 5, Mérida |
Cada fila de la tabla Personas
corresponde a una única persona. La tabla Contactos
está desde ahora relacionada con la tabla Personas
.
Observe la forma en que se introducen los datos en los campos Nombre y apellido
y Dirección
. La gente que introduce los datos puede cometer errores, algunas veces incluso negligentes. En nuestros datos de ejemplo tenemos diversas secuencias de introducción del nombre y el apellido (Joan Smith y Smith Joan; Adam y ADAM) y muchas más formas de introducir la misma dirección. Seguramente usted puede discurrir muchas otras maneras.
El problema anterior muestra que por ejemplo cuando se busca el número de teléfono de una persona cuya dirección es “Puerta Occidental 1, Varsovia” no se conseguirá un resultado completo. Solo se obtendrá una fila en lugar de tres. Por otra parte, tampoco encontrará todos los números de teléfono buscando por el valor “Joan Smith” en el campo Nombre y apellido
, porque “Smith Joan” no encaja con “Joan Smith”.
¿Cómo puede solucionar estos problemas utilizando una base de datos? Puede lograrlo cambiando el diseño de la tabla Personas
:
Separando los datos del campo Nombre y apellido en dos campos independientes:
Nombre
yApellido
.Separando los datos del campo
Dirección
en tres campos independientes:Calle
,Número de casa
yCiudad
.Garantizando la corrección de los datos: asegurándose de que no hay ningún campo vacío, por ejemplo debe introducir siempre un número de casa.
Una tabla modificada tiene un aspecto parecido a:
Tabla 6.4. Tabla de personas
Nombre | Apellidos | Calle | Número de la casa | Ciudad |
---|---|---|---|---|
Juan |
Ejemplo |
Calle Larga |
1 |
Córdoba |
Adán |
Prueba |
Paseo Marítimo |
5 |
Mérida |
Condiciones | ||||
campo obligatorio |
campo obligatorio |
campo obligatorio |
campo obligatorio |
campo obligatorio |
Gracias a la introducción del campo requerido condición podemos estar seguros de que los datos introducidos están completos. Por supuesto, en el caso de otras tablas, puede permitir omitir ciertos campos durante la introducción de los datos.
Una hoja de cálculo muestra todas las líneas y las columnas de la tabla, que a veces puede ser molesto en las hojas enormes de datos. Por supuesto, puede filtrar y ordenar las líneas de la hoja de cálculo, aunque debe extremar los cuidados cuando vaya a hacerlo. Los usuarios de la hoja de cálculo pueden olvidar que la vista de datos se ha filtrado, lo que puede inducir a cometer errores. Por ejemplo, para calcular las sumas puede pensar que tiene 100 filas de datos aunque, de hecho, hay 20 filas ocultas más.
Si desea trabajar sobre un pequeño subconjunto de los datos, por ejemplo para enviárselo a otros para que lo editen, puede copiarlo y pegarlo en otra hoja de cálculo y después de la edición pegar los datos modificados devueltos a la hoja de cálculo principal. Estas ediciones “manuales” pueden provocar pérdida de datos o cálculos incorrectos.
Para limitar la visualización de los datos, las aplicaciones de bases de datos ofrecen consultas, formularios e informes.
Un modo muy práctico de limitación es la siguiente versión extendida de la anteriormente descrita tabla Personas
:
Tabla 6.5. Tabla de personas
Nombre | Apellidos | Calle | Número de la casa | Ciudad | Sueldo |
---|---|---|---|---|---|
Juan |
Ejemplo |
Calle Larga |
1 |
Córdoba |
2300 |
Adán |
Prueba |
Paseo Marítimo |
5 |
Mérida |
1900 |
Vamos a suponer que la columna recientemente introducida «Sueldo» contiene datos confidenciales. ¿Cómo puede compartir por ejemplo detalles de contacto de las personas con sus compañeros de trabajo pero sin revelar sus sueldos? Es posible si comparte solo una consulta y no la tabla completa. La consulta puede seleccionar todas las columnas excepto la columna «Sueldo». En el mundo de las bases de datos una consulta de este tipo se suele conocer como una «vista».
Su computador probablemente sea bastante rápido. Sin embargo, puede ralentizarse algo si utiliza hojas de cálculo muy grandes. Su baja eficiencia reside en primer lugar en la carencia de índices que aceleren el proceso de búsqueda de los datos (las bases de datos sí que ofrecen índices). Además, si va a realizar operaciones como copiar al portapapeles del sistema, incluso la copia de datos puede resultar problemática en algunas ocasiones.
Las hojas de cálculo que contienen conjuntos de datos muy grandes tardan mucho tiempo en abrirse. Una hoja de cálculo carga multitud de datos en la memoria del computador al abrirse. La mayor parte de los datos que se cargan posiblemente sean innecesarios y no se utilicen en ese momento. Las bases de datos, a diferencia de las hojas de cálculo, cargan los datos almacenados en el computador solo cuando los necesita.
En la mayor parte de las ocasiones, no tendrá que preocuparse de cómo se almacenan los datos en la base de datos. Esto significa que, a diferencia de las hojas de cálculo, las bases de datos no se preocupan de:
La secuencia de las filas, porque puede ordenar las líneas según sus necesidades. Además, puede ver los mismos datos en diversas vistas con diferente ordenación.
Lo mismo se aplica también a las columnas (campos) de la tabla.
Junto con la Limitación de la vista de datos descrita en el párrafo anterior, estas cualidades constituyen la ventaja de las bases de datos.
Las últimas ediciones de las aplicaciones de creación de hojas de cálculo le permiten diseñar formularios para introducir datos. Este tipo de formularios son los más utilizados cuando los datos no se pueden visualizar adecuadamente en la vista de tabla, por ejemplo, si el texto ocupa demasiadas líneas o si todas las columnas no caben en la pantalla.
En este caso, la forma en la que funciona la hoja de cálculo es problemática. Los campos para la entrada de la base de datos presentan dificultades para ubicarlos en la hoja de cálculo, y suelen ser poco seguros frente a la manipulación (intencionada o accidental) del usuario.
Las bases de datos activan la agrupación, la limitación y resumen de datos en un formulario de un informe. Las hojas de cálculo normalmente se imprimen en un formulario de pequeñas tablas sin control completamente automático sobre las divisiones de las páginas o la disposición de los campos.
Las aplicaciones para crear bases de datos suelen ofrecer lenguajes de programación. Las hojas de cálculo más recientes también tienen estas capacidades, pero reducen la capacidad de modificar los campos de la hoja de cálculo y la copia de datos sencilla, sin olvidar la relevancia de las reglas de identidad que se mencionaron en los párrafos anteriores.
El procesamiento de datos en la hoja de cálculo se suele hacer mediante una interfaz gráfica de usuario, que puede reducir la velocidad de procesamiento de los datos. Las bases de datos pueden trabajar en segundo plano, fuera de las interfaces gráficas.
Es difícil imaginar varios usos para una hoja de cálculo. Aunque es técnicamente posible en las aplicaciones más recientes, necesita mucha disciplina, atención y conocimientos por parte de los usuarios, algo que no se puede garantizar.
Una forma clásica de compartir los datos almacenados en una hoja de cálculo con otras personas es enviar un archivo completo (normalmente, por correo electrónico) o proporcionar un archivo de hoja de cálculo en una red de computadores. Esta forma de trabajar en poco eficaz para grupos de muchas personas: los datos que pueden ser necesarios en un momento los puede tener bloqueados otra persona.
Por otro lado, las bases de datos se han diseñado pensando que puede haber varios usuarios accediendo a los datos. Incluso en la versión más simple, es posible bloquear una fila de un tabla en concreto, lo que hace posible compartir los datos de la tabla.
Asegurar una hoja de cálculo o alguna de sus secciones con una contraseña es una mera actividad simbólica. Después de distribuir un archivo de hoja de cálculo por una red de computadores, la gente puede copiar el archivo e intentar averiguar la contraseña. A veces no es tan difícil, porque la contraseña está almacenada en el mismo archivo que la hoja de cálculo.
Las características para editar los bloqueos o para bloquear la copia de una hoja de cálculo (o parte de ella) es igual de fácil de eludir.
Las bases de datos (salvo que estén almacenadas en un archivo en lugar de en un servidor) no suelen estar disponibles en un único archivo. Se suele acceder a ellas usando una red de computadores, normalmente proporcionando un nombre de usuario y una contraseña. Obtiene acceso solo a esas áreas (tablas, formularios o incluso filas y columnas seleccionadas) que le han sido asignadas para definir los adecuados derechos de acceso.
Los derechos de acceso pueden afectar a la capacidad para editar datos o para acceder a los datos. Si hay datos a los que no puede acceder, y no se los han enviado al computador, no tiene la posibilidad de hacer una copia de los datos de una forma tan fácil como en los archivos de hoja de cálculo.