MIT OpenCourseWare


11.208 Introducción a la informática en la gestión pública II

Página principal
¿Qué es OCW?
Ayuda
Feedback
Preguntas frecuentes
Glosario
 
 
Página principal del curso
Programa
Calendario
Material de clase
Trabajos
Exámenes
  Otras fuentes
  Prácticas
  Material de estudio

   MIT

   
 

Clase 4: Más información sobre Microsoft Access® y las bases de datos relacionales

Todas las pantallas han sido capturadas de MS Access®

23 de enero de 2002

Objetivo:

Introducción al modelo de base de datos relacional y consultas de dificultad media (funciones de agrupación y consultas para las que es necesario el uso de más de una tabla).

Resumen:

Debate sobre bases de datos, introducción al modelo relacional y ejemplos de los tipos de consulta que se podrían pedir en las prácticas.

Puntos principales:

Debate sobre el formato de los datos y su estructura.
Características principales del modelo de base de datos relacional.
Consultas de dificultad intermedia:

    - función de agregado.
    - generador de expresiones.
    - actualización de la base de datos.
    - combinación de varias tablas. 

Repaso de bases de datos:

  • formato y estándares de los datos:

    - Sólo texto: ASCII.
    - Texto con formato: MSWord, WordPerfect.
    - Hojas de cálculo: *.xls, *wk3.
    - Bases de datos: dBase *.dbf

  • Diferencias en la elección del modelo de datos (categoría de las clases de datos) y posibles formas de estandarizarlo.
  • Una forma de entender en qué consiste una base de datos es verla en su formato ASCII (sólo texto), modo habitual de intercambio de datos entre programas. El formato ASCII es importante también porque gran cantidad de la información que se encuentra en internet está disponible en este estándar básico.
  • Estructuras y modelos de datos:

    - Estructuras lógicas que representan situaciones del mundo real.
    - Modo en el que se deberían representar los aspectos de interés.
    - Cómo se pueden relacionar las cosas entre sí.

  • El modo más simple de base de datos es lo que se conoce como 'fichero plano' (válido para pequeñas cantidades de datos relativamente simples).

Consultas a una base de datos de fichero plano: base de datos de la encuesta a los empleados del Ministerio de Transporte de EEUU (DOT).

  • Cómo importar un archivo de tipo *.dbf: Para utilizar un archivo *.dbf en MS Access, hay que ir a Archivo y elegir Nueva...; luego, seleccionar Base de datos en blanco y pulsar Aceptar. En la ventana Archivo nueva base de datos, introducimos un nombre para el archivo, como por ejemplo, mi_dot.mdb; debemos comprobar que en el apartado Guardar en aparece la carpeta en la que lo queremos guardar. La ventana tendría el siguiente aspecto:

Creación de "mi_dot.mdb" en la ventana Archivo nueva base de datos

Creación de "mi_dot.mdb" en la ventana Archivo nueva base de datos

A continuación, hacemos clic en Crear. Entonces, debería aparecer la siguiente ventana (mi_dot: Base de datos):

La nueva ventana de base de datos de "mi_dot"

La nueva ventana de base de datos de "mi_dot"

Ahora vamos a Archivo... Obtener datos externos...  y elegimos la opción Importar... En la ventana 'Importar', debemos especificar dónde se encuentra el archivo *.dbf que queremos importar. En nuestro caso, es K:\11.208\data\; luego, nos aseguraremos de que en el apartado 'Tipo de archivo' pone dBase IV (*.dbf). A continuación, seleccionamos empleados.dbf y hacemos clic sobre el botón Importar. Entonces, Access mostrará una ventana en la que dirá "'empleados' ha sido importada con éxito". Cerramos la ventana 'Importar'. En la ventana 'mi_dot: Base de datos', podremos ver ya 'empleados' en la lista, a continuación de las tablas.

  • Repaso de la documentación de bases de datos: definiciones de datos  y  formularios de las encuestas
  • Repaso del diseño de consultas sencillas.
  • Uso de Y frente a O:
    • Cuando se introducen expresiones en más de una celda del apartado 'Criterios', Microsoft Access las combina utilizando los operadores Y u O. Si las expresiones se encuentran en diferentes celdas de la misma fila, Microsoft Access utilizará el operador Y, lo que significa que en los resultados aparecerán sólo los registros que cumplan los criterios de todas las celdas. Si las expresiones se encuentran en diferentes filas de la tabla de diseño, Microsoft Access utilizará el operador O, por lo que en los resultados se mostrarán todos los registros que cumplan alguno de los criterios que figuran en las celdas.
  • Funciones de agregado (Cuenta, Var...); agrupar por.
  • Expresiones y expresiones calculadas (es necesario crear primero un nuevo campo).
    • Pero antes hagamos una consulta sencilla: cuántos empleados del DOT condujeron en solitario como medio principal de transporte al trabajo en 1989. Echemos una ojeada al diccionario de datos y a la encuesta.

Consulta de los empleados que condujeron principalmente en solitario

Consulta de los empleados que condujeron principalmente en solitario

Resultado de la consulta anterior

Resultado de la consulta anterior

    • Obsérvese que estamos viendo el registro y que, por tanto, realizar la cuenta a partir del identificador de encuesta (campo clave) daría el mismo resultado.

    • Obsérvese, sin embargo, que las funciones del apartado 'Total' pueden proporcionar cálculos realizados a partir del campo seleccionado. Así, por ejemplo, podemos calcular la media de las horas de viaje de los que conducen en solitario.

    • La función 'Agrupar por' también permite mejorar en gran medidalos niveles de selección. Podemos examinar la media de las horas de viaje de cada división del DOT.

    • Y podemos ir más allá y comprobar la media de las horas de viaje en función del condado de residencia de los empleados de una rama concreta del DOT.

    • Y, por supuesto, también de los códigos postales dentro de los condados.

    • También puede ser útil el cáculo de expresiones mediante el uso de dos o más campos. Podemos contar el número de personas por familia (F_TAM) y el número de trabajadores en activo que hay en las familias (F_EMPL), ¿pero cuál es su porcentaje?

    • Sólo necesitamos la siguiente expresión:

    • Sin embargo, esto no nos permite utilizar la función 'Agrupar por', por lo que debemos añadir la función 'Suma':

  • CÓMO AÑADIR UN NUEVO CAMPO CON UNA EXPRESIÓN CALCULADA Y GUARDAR EL RESULTADO EN UNA NUEVA TABLA:
    • Puede ser muy útil crear un nuevo campo y luego añadirle datos basados en una expresión calculada. Para ello, hay que ir a la pestaña Tablas de la ventana principal de la base de datos y pulsar Diseño. Situarse al final de la tabla 'empleados' y hacer clic en la última fila vacía. Introducir un nombre para el campo (que no contenga espacios ni caracteres extraños). Luego, hacer clic en la celda 'Tipo de datos' para que aparezca el menú desplegable y seleccionar "Numérico". Además, en la zona gris situada bajo la pestaña "General", seleccionamos "Doble" en el apartado 'Tamaño numérico'. La ventana debería ser similar a ésta:

    • Luego, cerramos la tabla y guardamos los cambios. En este momento, la tabla debería tener una nueva columna sin datos.
    • Ahora, generemos una nueva consulta con el campo que acabamos de crear y una expresión calculada, para luego añadirlo a una nueva tabla:

    • Hacer clic en el botón 'Seleccionar consulta'  Query Select button de la barra de herramientas y seleccionar la opción Consulta de creación de tabla del menú.  

    En la ventana Crear nueva tabla, introduciremos el nombre que queramos asignar a la tabla y eligiremos la opción 'Base de datos activa'. Una vez pulsado el botón 'Ejecutar consulta' Query now button, Microsoft Access nos pedirá, a través de una ventana de aviso, que confirmemos la decisión de crear una nueva tabla. Pulsamos . Ahora disponemos de una nueva tabla sobre la que podemos seguir realizando consultas.

    Bases de datos relacionales

  • El modelo relacional es más complejo que el anterior, pues dispone de múltiples tablas que se pueden relacionar entre sí mediante un identificador común.
  • Estas relaciones enlazan diferentes tablas con distintos tipos de datos, generando una serie de información que de otro modo no sería posible obtener. Por ejemplo, podremos enlazar la tabla de los propietarios de los edificios con la de las parcelas y con la de los incendios y determinar, así, a quién pertenece la propiedad que resultó más dañada por el fuego.
  • Ejemplos de relaciones entre tablas: parcelas, incendios, impuestos y propietarios.
  • Crear la base de datos "Parcelas_y_demas".
  • Vayamos a Obtener datos externos... y luego a Importar la siguiente tabla: K:\11.208\Data\parcelas.dbf; a continuación, repetiremos esta operación tres veces más, para las tablas incendios.dbfimpuestos.dbf y propietarios.dbf.

Este es el diccionario de datos de dichas tablas:

PARCELAS
INCENDIOS
IMPUESTOS
PROPIETARIOS
id identificador único de parcela Id identificador único
de parcela
id identificador único
de parcela
numprop identificador de propietario
bdb barrio/distrito
/bloque
bdb barrio/distrito
/bloque
bdb barrio/distrito
/bloque
nomprop nombre del propietario
parcela numero de parcela dentro del bloque Parcela numero de parcela dentro del bloque parcela numero de parcela dentro del bloque direccion direccion del propietario
dir1 número (de la calle) F_incend Fecha del incendio tip_pro tipo de propiedad ciudad De residencia del propiet.
dir2 nombre de la calle Ignfactor Causa u origen del incendio (factor de ignición) val_ter valor del terreno estado De residencia del propiet.
cod_post código postal Perd_est Perdidas estimadas val_edi valor del edificio
cod_post
código postal de residencia del propietario
long longitud (en pies cuadrados)     impuesto impuesto de
propiedad
   
nump identificador de propietario            
uso_ter tipo de utilización
del terreno
           
  • Relacionar las tablas mediante identificadores clave: Primero, PARCELAS.ID con INCENDIOS.ID e IMPUESTOS.ID; luego, PROPIETARIOS.NUMPROP con PARCELAS.NUMP.
  • Con las tablas relacionadas se pueden realizar los mismos tipos de consulta que con un fichero plano(Agrupar por, Ordenar por, etc.).
  • NOTA: Uso del apartado 'Criterios' con tablas relacionadas entre sí:
    • Si la consulta incluye tablas relacionadas, deberemos tener en cuenta que los valores que especifiquemos en el apartado de criterios de los campos de dichas tablas son sensibles a mayúsculas y minúsculas. Por lo tanto, deberán coincidir exactamente con los valores de la tabla en cuestión.
  • Las relaciones entre tablas pueden ser de gran utilidad en otras cuestiones: por ejemplo, facilitan el análisis proporcionando una vista de las tablas para traducir los códigos:
  • Abrir la base de datos 'misempleados'.
  • Ir a Obtener datos externos... y elegir la opción Importar. Luego, en K:\11.208\Data\ seleccionar 'dotmodo1.dbf' y abrirla para comprobar que se trata de una tabla sencilla:



Contenidos de la tabla dotmodo1



Tablas empleados y dotmodo1 relacionadas mediante los campos MODO1_COD y MODO1_A



Resultado de la consulta anterior

Massachusetts Institute of Technology © 2003 MIT | Información Jurídica | Privacidad
Todo uso del sitio de MIT OpenCourseWare y sus materiales de curso queda sujeto a las condiciones y términos de uso detallados
en la sección sobre Información Jurídica
Copyright © 2003 Portal Universia S.A. Todos los derechos reservados
(Avda. de Cantabria s/n - Edif. Arrecife, planta 00.28660 Boadilla del Monte) - Madrid. España.
Contacta con nosotros: Usuarios | Empresas-Instituciones-Medios comunicación
Código Ético | Aviso Legal | Política de confidencialidad | Quiénes somos: Sala de Prensa