lunes, 23 de agosto de 2010

Componentes de una Base de Datos en Access

En Access, una base de datos no es simplemente una tabla, ni siquiera un conjunto de tablas relacionadas entre si. Cuando hablamos de Base de Datos incluimos:

  1. Las Tablas y sus relaciones
  2. Las Consultas extraen información de una o varias tablas utilizando filtros en forma de fórmula. Por ejemplo, Ciudad="Sevilla". Además existen otro tipo de consultas que permiten modificar información de las tablas.
  3. Los Formularios permiten alimentar de información las tablas, presentando al usuario una forma más adecuada para la introducción de los datos. En un formulario se pueden incluir los datos de más de una tabla de forma simultánea.
  4. Los Informes nos permiten obtener presentaciones de los datos contenidos en las tablas con un formato personalizable. Dan lugar a documentos impresos en papel, en PDF o presentaciones en pantalla.
  5. Páginas Web. En compañía del lenguaje de programación ASP o ASP.NET de Microsoft permiten crear aplicaciones web dinámicas, que interactúan con el usuario que navega por ellas.
  6. Macos y módulos. Permiten la automatización de procedimientos.

Gestión de Base de Datos

  1. Añadir información. Introducir nuevos registros en una tabla.
  2. Modificar la información de una tabla. Es lo que se conoce como 'Editar'. Por ejemplo, cuando un proveedor cambia de teléfono.
  3. Eliminar la información. Por ejemplo, cuando una línea aérea suprime un vuelo.
  4. Buscar datos. Por ejemplo, necesitamos localizar la persona de contacto que tiene cierta empresa en la ciudad de Caracas.
  5. Ordenar los registros de una tabla por ciertos criterios.
  6. Copiar una base de datos en otra, para hacer una copia de seguridad.
  7. Consultar. Esta una de las opciones más importantes ya que una base de datos se quiere fundamentalmente para luego poder localizar información. Por ejemplo, necesitamos conocer el teléfono de todos nuestros proveedores que el año pasado facturaron más de cierto importe, y que sean de Valencia.
  8. Calcular ciertos valores. Una base de datos no es una hoja de cálculo pero permite efectuar cálculos sobre la información que contiene. Por ejemplo, necesitamos conocer los kilómetros recorridos por nuestra flota de camiones durante los últimos 3 meses.
  9. Imprimir los datos de las tablas con cierto formato que nosotros definimos.

miércoles, 11 de agosto de 2010

Conceptos básicos de Bases de Datos

Una base de datos se puede definir como un conjunto de información organizada. Los datos se han de almacenar guardando cierta estructura que luego nos permita su manejo.

Una tabla es una base de datos simple o base de datos plana.

La tabla de una base de datos tiene su propia terminología. Las filas se denominan registros y las columnas campos. La intersección de una fila y una columna recibe la denominación de dato o elemento de la tabla.

Bases de Datos Relacionales

Si intentamos tener toda la información en una única tabla lo más probable es que estemos repitiendo información, y es síntoma de que necesitamos más de una tabla que se encuentren relacionadas entre si.


El hecho de disponer de una única tabla tiene varios inconvenientes:
  1. Repetición de la información
  2. Dificultad en actualizar ciertos dato
  3. No existe ficha de un elemento sin transacción

Vamos a considerar un ejemplo de una única tabla con información repetida.

Supongamos que somos una librería que anota en un tabla las ventas que realiza. Por cada venta realizada anotamos en una única tabla los siguientes campos:

  • ISBN
  • Titulo
  • Autor
  • Editorial
  • Dirección editorial
  • Código cliente
  • Nombre cliente
  • Dirección cliente
  • Fecha venta

Repetición de la información

El hecho de disponer de una única tabla con estos campos supone que tendremos información repetida de dos tipos:

  1. Si un cliente compra varios libros anotaremos un registro (una fila) por cada libro que adquiera, y esto hará que el campo 'Dirección cliente' se encuentre repetido, tantas veces como libros hubiera comprado.
  2. Puesto que podemos vender varios títulos distintos de una misma editorial la dirección de la editorial se repetirá tantas veces como se venda un libro de esa editorial.
Esto sugiere que sería conveniente disponer de cuatro tablas:

  • Libro. Esta tabla contiene información sobre los diferentes libros que tenemos a la venta: Titulo, Autor, ISBN, Editorial, Precio, ...
  • Editorial. Esta tabla contiene información sobre la Editorial: Nombre, Dirección, Teléfono, ....
  • Cliente: Esta tabla contiene información sobre los clientes: Nombre, Dirección, ...
  • Ventas: Esta tabla contiene información sobre cada libro vendido en la librería: Fecha, ISBN, Cliente, Descuento, ...
Dificultad en actualizar ciertos datos

Por otro lado, existe una gran dificultad al modificar ciertos datos, como por ejemplo, la dirección del cliente,  ya que en una única tabla la dirección figura repetida tantas veces como libros hubiera adquirido ese cliente. Tendríamos que modificar la dirección de ese cliente en todos los registros (filas) donde aparece. Si se nos olvida modificar la dirección en algún registro el cliente en cuestión figurará en la base de datos con dos direcciones distintas, y esto compromete la consistencia de los datos, la fiabilidad de la información que manejamos.

No existe ficha de un elemento sin transacción

No podemos dar de alta los datos de una editorial nueva (nombre, dirección,...) hasta que no realicemos la venta de algún libro de esa editorial.