Académique Documents
Professionnel Documents
Culture Documents
Mercedes Frassia
TEMA A DESARROLLAR...........................................................................................................................2 CASO .........................................................................................................................................................3 CONOCIMIENTOS EN PRCTICA ............................................................................................................4 1. QU ES UN SISTEMA DE ADMINISTRACIN DE BASES DE DATOS RELACIONALES....................4 2. CREACIN DE UNA BASE DE DATOS.................................................................................................5 3. LA VENTANA INICIAL DEL PROGRAMA ..............................................................................................6 4. CMO CREAR UNA TABLA ..................................................................................................................9 4.1 Cmo crear un campo ........................................................................................................................10 4.2. Cmo definir una clave principal ........................................................................................................12 4.3 Cmo decidir el tipo de datos de un campo ........................................................................................14 4.4 Crear las tablas...................................................................................................................................18 4.5 Cmo personalizar campos ................................................................................................................20 4.6 Cmo insertar nuevos campos ...........................................................................................................27 5. CMO TRABAJAR CON TABLAS .......................................................................................................28 5.1 Cmo indexar por un campo que no es la clave principal ...................................................................28 5.2 Cmo importar una base de datos a Access ......................................................................................29 5.3 Cmo exportar una base de datos de Access ....................................................................................31 5.4 Cmo Compactar una base de datos de Access ................................................................................31 5.5 Cmo hacer una copia de seguridad de una base de datos ...............................................................31 6. COMO ESTABLECER RELACIONES ENTRE TABLAS.......................................................................32 ARCVIEW Y LAS BASES DE DATOS......................................................................................................37 EVALUACIN...........................................................................................................................................38
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
TEMA A DESARROLLAR
En esta clase examinar nuevamente algunos conceptos ya estudiados en la Clase 1. Pero no desde un punto de vista terico, sino aplicando los conocimientos adquiridos para crear tablas en Microsoft Access. Repasaremos los siguientes conceptos: Qu es un Sistema Administrador de Bases de Datos Qu es una tabla Qu es un campo Qu es una consulta Qu es un formulario Qu es un filtro Crear una tabla Definir campos y personalizar las caractersticas de los mismos. Definir relaciones entre tablas
Si se encuentra ante una extrema dificultad en la resolucin de determinado ejercicio, podr consultar una base de datos con los ejercicios resueltos. Visite http://www.cursogis.com.ar/BasesP/Bases2.htm Baje el archivo Escuela Consulte este archivo slo en caso de extrema necesidad. Trate de resolver los ejercicios por su cuenta, ya que mi experiencia indica que, en general la resolucin de un problema ayuda y fortalece el aprendizaje. En esta clase encontrar respuesta a las siguientes preguntas, a partir de ejercicios: Qu es un sistema de administracin de bases de datos relacionales? Qu es una tabla? Qu tipos de datos existen y para qu sirve cada uno? Cmo se personaliza un campo? Cmo puedo importar la informacin que tengo en un formato distinto a Access? Cmo puedo exportar mi informacin a un formato que no sea Access? Cmo se relacionan las tablas? Cmo se garantiza la coherencia de los datos relacionados? Qu diferencia hay entre un objeto vinculado y uno incrustado? Cmo se crea un identificador? Para qu sirve indexar un campo que no es identificador? Cmo se hace? Para qu sirve compactar una base de datos y cmo se hace? Cmo se hace una copia de seguridad de los datos?
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
CASO
Utilizaremos durante el desarrollo de esta clase y las subsiguientes, el caso analizado en la Clase 1, relacionado con la informacin de una Escuela Primaria. Hemos construido un diagrama EAR, siguiendo los conocimientos adquiridos. La resolucin de este esquema tiene varias soluciones correctas posibles. Nosotros hemos optado por la que le mostramos a continuacin. Las tablas (entidades) que conforman el diagrama son: ALUMNOS (DNI_Alumno, Nombre Alumno, Apellido Alumno, Fecha_Nacimiento, DNI_Responsable, Legajo Maestro, Estatura, Foto, Nacionalidad) RESPONSABLE (DNI_Responsable, Nombre Responsable, Apellido Responsable, Direccin Responsable) MAESTRO (Legajo, Nombre Maestro, Apellido Maestro, Grado, Currculum) INFO_SALUD (DNI_Alumno, Grupo, Factor, Apendicitis, Alrgico_Penicilina) TELFONO _ RESPONSABLE (DNI_Responsable, Telfono, Tipo Telfono) ACTIVIDADES (Cdigo Actividad, Descripcin, Arancel) REALIZA (DNI_Alumno, Cdigo Actividad)
ACLARACIONES: En este esquema se cre la tabla TELFONO _ RESPONSABLE ya que se considero que telfono es un Grupo Repetitivo. Como la tabla ACTIVIDAD mantena relaciones Muchos-a-Muchos con la tabla ALUMNOS se cre la tabla intermedia REALIZA La tabla INFO_SALUD, mantiene relaciones Uno-a-Uno con ALUMNO.
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
CONOCIMIENTOS EN PRCTICA
1. QU ES UN SISTEMA DE ADMINISTRACIN DE BASES DE DATOS RELACIONALES
De acuerdo a Ullman (1999), un sistema de administracin de bases de datos relacionados es ``.... un sistema formal y abstracto que permite describir los datos de acuerdo con reglas y convenios predefinidos. Es formal, pues los objetos del sistema se manipulan siguiendo reglas perfectamente definidas y utilizando exclusivamente los operadores definidos en el sistema, independientemente de lo que estos objetos y operadores puedan significar. En definitiva, es un programa que corre en una computadora que intermedia entre los datos y las aplicaciones que los utilizan y permite: Crear, modificar y borrar estructuras de datos Ingresar, actualizar y borrar registros Recuperar informacin Mantener la seguridad e integridad de los datos
Microsoft Access es un Sistema de Administracin de Bases de Datos Relacionales que permite administrar toda la informacin de una organizacin desde un nico archivo de base de datos. Con tal fin, provee una serie de herramientas y opciones que se visualizan al abrir el programa. Por favor, abra el programa.
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Apenas abrimos Access, se abre una ventana inicial con tres opciones: 3. Crear una nueva base de datos usando Base de Datos de Access en blanco (Blank Acces Data Base). Esta opcin sirve para crear una nueva base, donde podr agregar tablas, formularios, informes y otros objetos 4. Crear una nueva base de datos usando Asistentes (Access database wizards, pages, and projects). Esta opcin permite crear proyectos con ayuda de asistentes. Para lograr este objetivo, Access incluye una serie de plantillas. En este curso, no se utilizar esta alternativa, porque aunque en un primer momento puede resultar atractiva, es mejor crear una base desde cero. 5. Abrir un archivo existente (Open an Existing File). Esta opcin permite abrir una Base de Datos o un proyecto Access existente en la PC o en la red. Esta opcin la utilizaremos una vez creada la base de datos. En el men anterior elija la opcin Base de datos de Access en blanco (Blank Acces Data Base). A continuacin, elija el nombre de la base de datos y el directorio donde quiere guardarla (Save in), nosotros hemos elegido el nombre ESCUELA.mdb
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
FORMULARIOS (Forms) Para ver, escribir y cambiar datos fcilmente, se crean formularios. (Forms). Los formularios estn compuestos de controles que permiten mostrar y escribir texto. El tipo de control ms comnmente utilizado, es el cuadro de texto En general, estn acompaados por una etiqueta de texto explicativa
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Por otra parte, los formularios se pueden personalizar creando aplicaciones a la medida de su organizacin. Nos ocuparemos de los formularios en la Clase 4.
CONSULTAS (Queries) Para buscar y recuperar datos especificando condiciones, tal como la consulta de los alumnos de tercer grado de nacionalidad argentina mayores de 10 aos, se usan las Consultas (Queries). El tipo de consulta ms habitual es una consulta de seleccin. Esta consulta recupera datos de una o ms tablas utilizando los criterios que se especifican y los muestra en el orden que se establece.
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
INFORMES (Reports) Un informe es una forma efectiva de presentar los datos en formato impreso. Por supuesto, los informes se pueden personalizar y admiten operaciones tales como el agrupamiento de los datos.
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
En la columna Nombre del campo (Field Name) escriba el nombre del campo. En este caso DNI_Alumno, el Nmero de Documento de Identidad. Recuerde lo que dijo Codd: los nombres de los campos no se pueden repetir, por lo cual no conviene usar la palabra DNI ya que habra varios campos DNI iguales: uno para el alumno y otro para el responsable En la columna Tipo de datos (Data Type), haga click en la flecha y seleccione el tipo de dato del men desplegable. DNI_Alumno es texto (Text). Por qu, se preguntar, si en general el nmero de documento es un nmero? En el prximo apartado encontrar una explicacin que le permitir decidir qu tipo de dato es el ms conveniente para su aplicacin. En la columna Descripcin (Description), escriba una descripcin de la informacin que contendr este campo. La descripcin es opcional. Por ejemplo, Slo Guarde el N del DNI del Alumno. Esta informacin se despliega en la parte de debajo de la ventana hoja de datos en el momento de ingresar datos. Piense que probablemente, usted no ser la nica persona que utiliza esta tabla y que este tipo de aclaraciones es muy til para un usuario nuevo. Esta informacin se desplegar en la parte de debajo de la ventana hoja de datos, en el momento de ingresar datos. Es til para dejar instrucciones y/o aclaraciones a otros usuarios.
Establezca las propiedades del campo en la parte inferior de la ventana. Ms adelante en este texto encontrar una explicacin detallada de las propiedades de cada tipo de dato. Es importante leer cuidadosamente el apartado Cmo personalizar campos 10
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Por cada uno de los campos de la tabla, debe seguir los mismos pasos. Los campos a crear son: DNI_Alumno, Apellido Alumno, Nombre Alumno, DNI_Responsable, Legajo Maestro y Nacionalidad. Estos campos son de tipo texto (Text). Fecha_Nacimiento, es de tipo fecha (Date/Time).
Foto, es de tipo OLE (OleObject). Posibilitar almacenar imgenes escaneadas, en formato BMP. Estatura, es de tipo numrico (Number). Este es el resultado esperado.
11
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
QU TIPO DE CLAVE PRINCIPAL DEBO UTILIZAR? Claves principales de Campo simple Si tiene un campo que contiene valores exclusivos, como nmeros de identificacin o el cdigo de la actividad complementaria, puede designar ese campo como la clave principal. Utilizamos este tipo para crear la clave principal de la tabla ALUMNO a la cual hemos llamado DNI_Alumno.
Claves principales de Auto numrico Se usa este tipo de clave para introducir automticamente un nmero secuencial cuando se agrega un registro a la tabla. Designar un campo de este tipo, es la forma ms sencilla de crear una clave principal. Utilizamos este tipo para crear la clave principal de la tabla MAESTRO a la cual hemos llamado Legajo.
12
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Claves principales de Campos mltiples En situaciones en las que no se puede garantizar la exclusividad de un slo campo, puede designar dos o ms campos como clave principal. La situacin ms comn en la que surge este problema, es en las tablas derivadas que se crean entre 2 tablas que mantenan una relacin Muchos-a-Muchos. En la tabla intermedia REALIZA, la clave principal est formada por dos campos: DNI_Alumno y Cdigo_Actividad. Para seleccionar varios campos, mantenga presionada la tecla CTRL y a continuacin, haga click en el selector de filas de cada campo. Luego haga click en el botn Clave principal en la barra de herramientas. As se ve la clave principal combinada de la tabla REALIZA. Por otra parte, as se ve la clave combinada de la tabla TELFONO_RESPONSABLE.
NOTAS Si no establece una clave principal antes de guardar una tabla recin creada, el programa le preguntar si desea que cree una clave principal. Si contesta afirmativamente, se crear una clave principal de tipo Auto numrico. Se puede especificar una clave principal para un campo que ya contiene datos, pero Microsoft Access genera un mensaje de error si al guardar la tabla encuentra valores Duplicados o Nulos en el campo. Los valores duplicados deben eliminarse. Puede ejecutar una Consulta con el fin de determinar qu registros contienen datos duplicados.
Antes de continuar creando tablas es necesario que lea los dos siguientes apartados: Cmo decidir el tipo de datos de un campo y Cmo personalizar campos.
13
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
TEXTO Texto o combinaciones de texto y nmeros, as como nmeros que no requieran clculos, como los nmeros de telfono. La cantidad de caracteres de longitud que tendr cada campo se determina en Tamao del Campo, con un mximo de 255 caracteres.
Ejemplos Generales de campos tipo texto: Nombre de un artculo, direccin de una empresa, telfono de un cliente, cargo de un empleado, nombre de una ciudad. Ejemplos en la tabla ALUMNO: el identificador, DNI_Alumno, es de tipo texto ya que a pesar de ser un nmero, no se requiere hacer ningn clculo con esta informacin. MEMO
Texto extenso o combinacin de texto y nmeros (hasta 65.535 caracteres), como por ejemplo, notas o descripciones Ejemplos Generales: En una base de datos de produccin, una descripcin extensa de un producto. En una base de datos de venta OnLine de libros, los comentarios acerca de un libro de los usuarios que lo leyeron. En una base de datos laboral, el perfil del puesto a cubrir. Ejemplos en la tabla MAESTRO: se debe usar un campo tipo memo para guardar el currculo del maestro.
14
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
NUMRICO Datos numricos utilizados en clculos matemticos. En Tamao del Campo, Field Size, se puede variar el rango y la precisin decimal.
Las posibilidades son: Byte: nmeros entre 0 y 255. Sin decimales. Ocupa 1 Byte. Por ejemplo, la edad del alumno. Entero: nmeros entre -32.768 y 32.767. Sin decimales. Ocupa 2 Bytes. Por ejemplo, las unidades en stock de un producto. Entero largo: nmeros entre -2.147.483.648 y 2.147.483.647. Sin decimales. Ocupa 4 Bytes. Es el predeterminado. Por ejemplo, en una empresa, la cantidad de unidades vendidas por artculo, en un ao. Simple, Doble, Decimal: para datos que requieren valores extremadamente grandes (ms de 30 cifras) y/o precisos (hasta 7 decimales). Por ejemplo, en una empresa de servicios, el campo que guarda los consumos de cada cliente. Nota: los tipos numricos ms comunes son entero largo y doble. Use entero largo cuando no necesite decimales y doble en el caso de que requiera esta precisin. Por defecto, cuando se crea un campo numrico, se crea un campo de tipo entero largo. Esto es lo que sucedi cuando se cre el campo Estatura en la tabla ALUMNO. Dejar esto as seria un error ya que necesita un campo numrico doble, que guarde cifras decimales. Vamos a modificarlo ms adelante en esta misma clase. MONEDA Se utiliza este tipo de datos para evitar el redondeo durante los clculos. Tiene una precisin de 15 dgitos a la izquierda del separador de decimales y de 4 dgitos a la derecha del mismo. Ejemplos Generales: Precio de un artculo, sueldo bruto de un empleado, tasacin de un inmueble. Ejemplos en la tabla ACTIVIDAD: se debe usar este tipo para almacenar el arancel.
15
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
FECHA/HORA El almacenamiento de fechas y horas en este tipo de campo, garantiza que las fechas y las horas se ordenarn correctamente. Adems, los cambios realizados en los formatos de fecha u hora especificados en la Configuracin Regional en el Panel de Control de Windows, se reflejarn automticamente en la informacin de estos campos. Ejemplos Generales: Fecha de ingreso a la compaa, Fecha de emisin de una factura, hora de ingreso y egreso de la compaa (en una base de datos que controle el presentismo). Ejemplos en la tabla ALUMNO: se puede usar este tipo para el campo fecha de nacimiento de los alumnos. AUTO NUMRICO Permite crear campos que introducen, automticamente, un nmero cuando se agregue un registro. Estos pueden ser nmeros secuenciales (con incremento de una unidad) o nmeros aleatorios (al azar). Una vez generado un nmero para un registro, este nmero no puede eliminarse ni cambiarse. Ejemplos Generales: Suelen usarse como clave principal numrica de cualquier tipo de tablas, como cdigo de paciente en un hospital, nmero de cliente, nmero de remito, nmero de proveedor, etc. Ejemplos en la tabla ACTIVIDAD: se puede usar este tipo para el campo Cdigo_Actividad. S/NO Campos que van a contener slo uno de dos valores posibles, como S/No, Verdadero/Falso, Activado/Desactivado. Ejemplos en la tabla INFO_SALUD: se puede usar este tipo para el campo Apendicitis y Alrgico_Penicilina. La respuesta ser Si-No.
16
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
OBJETO OLE Los campos Objeto OLE se utilizan para vincular o incrustar archivos creados con otros programas, como Microsoft Word, Microsoft Excel, imgenes, sonidos, pelculas o cualquier otro tipo de dato binario. Ejemplos Generales: la foto de un empleado de la compaa, una planilla Excel de costos de un producto, el currculum vitae de un aplicante en una base de datos laboral. Ejemplos en la tabla ALUMNO: se debe usar este tipo guardar la foto de cada alumno. HIPERVNCULO Un hipervnculo es un texto coloreado y subrayado o un grfico en el que se hace click para saltar a un archivo a una pgina HTML en la World Wide Web de Internet. Ejemplos Generales: la direccin Web de un equipo en una base de datos de deportes, el correo electrnico de un cliente, la ubicacin dentro de la red de un archivo de AUTOCAD que posee los planos de una casa en una base de datos de inmuebles. Ejemplos en la tabla MAESTRO: se puede usar un campo hipervnculo a un sitio Web del grado, donde los alumnos cuelgan sus dibujos y trabajos. LAS PREGUNTAS MAS FRECUENTES A LA HORA DE CREAR CAMPOS Antes de crear campos, en muchos casos deber hacerse estas preguntas: Debo crear un campo Texto o Memo? Utilice el tipo de dato Texto para almacenar datos como nombres, direcciones y cualquier nmero que no requieran ms de 255 caracteres. Utilice el tipo de datos Memo si necesita almacenar ms de 255 caracteres. Un campo Memo puede contener hasta 64.000 caracteres. El problema con los campos Memo es que no pueden ordenarse ni indexarse. Algo ms, si desea almacenar texto con formato o documentos largos, es ms conveniente que cree un campo OLE en lugar de un campo Memo. En este tipo de campo podr guardar un documento de Microsoft Word. Cul es la ventaja? Se guarda el formato.
Me conviene usar un campo de texto o de nmero para ingresar un valor tal como el DNI de los alumnos? En general, se debe usar el tipo nmero solamente para datos con los cuales necesita hacer clculos. Por qu motivo? El formato texto ocupa menos espacio. El problema con los campos textos que guardan nmeros, es que los nmeros se ordenan como cadenas de caracteres (primero 1, luego 10, 100 y recin el 2, 20, 200, etc.) Si quiere que la cadena anterior se ordene correctamente debe ingresar los nmeros precedidos por 0 (001, 010, 100, 002, 020, 200) Si no le convence esta ltima opcin, elija el tipo Nmero.
17
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Puede descargar la base de datos llamada ESCUELA con todos los ejercicios resueltos para que pueda ir comparando y analizando sus resultados. http://www.cursogis.com.ar/BasesP/Bases2.htm TABLA MAESTRO El campo Curriculum de esta tabla, debe ser de tipo OLE (Ole Object). Posibilitar almacenar Documentos de Word. Los otros campos deben ser de tipo texto (Text). Se estipularon diferentes anchos para estos campos. Por ejemplo, en los campos Nombre y Apellido, se especific un ancho (Widht) de 255 caracteres ya que se parti de la base que los 50 caracteres que asigna el programa por defecto, no eran suficientes. Por otra parte, Legajo se redujo a 8 caracteres. Para modificar esta propiedad, en Tamao del Campo, Field Size, se escribi 255 en un caso y 8 en el otro. Legajo es el identificador principal. Este es el resultado obtenido. Los conceptos que ya fueron desarrollados en la tabla MAESTRO, no se van a repetir en esta tabla.
TABLA RESPONSABLE
18
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
TABLA INFO SALUD Se crearon los campos Apendicitis y Alrgico Penicilina del tipo Si/No (Yes/No).
TABLA ACTIVIDAD Se cre un campo con tipo moneda (Currency) para Arancel, con el objetivo de obtener la mayor precisin.. El identificador de esta tabla es de tipo Auto numrico Secuencial (Auto Number). El campo Descripcin es de texto (Text), con un Tamao del Campo, de 255 caracteres.
TABLA TELFONO_RSPONZABLE La clave principal de esta tabla es una Clave Principal de Campos Mltiples. Para seleccionar varios campos, mantenga presionada la tecla CTRL y a continuacin, haga click en el selector de filas de cada campo.
TABLA REALIZA En la tabla intermedia REALIZA, la clave principal est formada por dos campos: DNI Alumnos y Cdigo Actividad
19
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Se abrir la ventana Diseo (Desing View), con la cual ha venido trabajando hasta ahora. En la parte superior de la ventana, haga click en el campo cuya propiedad desee modificar. En la parte inferior de la ventana, en la ficha General, haga click en la propiedad que quiere cambiar y escriba el nuevo valor o eljalo de la lista desplegable. A continuacin, vamos a enumerar las posibilidades que tienen los diferentes tipos de datos.
20
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
TEXTO Tamao del Campo (Field Size) Regula la longitud del campo, con un mximo de 255 caracteres. Por defecto la longitud es 50 lugares. Piense si con 50 lugares le alcanza o le sobra. Por ejemplo, el nmero de documento, debera tener 10 lugares: no hace falta ms, por lo menos en la Argentina. Si hubiera un campo para guardar la direccin del alumno, debera ser ms largo. Abra la base ALUMNO y modifique el tamao del campo.
Formato (Format) Permite personalizar la forma en que el texto se muestra e imprime. Puede utilizar los smbolos especiales que se detallan a continuacin con el fin de crear formatos personalizados para los campos Texto y Memo. Smbolo Descripcin < Convertir todos los caracteres a minsculas > Convertir todos los caracteres a maysculas. Por ejemplo, se podra especificar que el apellido del ALUMNO se ingrese en la base en Maysculas independientemente de cmo se incorpore y el nombre en Minsculas. A partir de este momento, el apellido estar siempre en maysculas.
Mscara de Entrada Se utiliza para facilitar la entrada de datos y para controlar los valores que los usuarios pueden introducir. Por ejemplo, puede crear una mscara de entrada para un campo Nmero de Telfono que muestre exactamente cmo debe introducirse un nmero nuevo. A continuacin, le mostraremos los smbolos ms usados. Incluiremos una mascara de ejemplo para cada uno de los smbolos y especificaremos un posible valor a ingresar con dicha mascara. Para este ejemplo, hemos utilizado el ISBN, Nmero Normalizado Internacional (International Standard Book Number) que posibilita la identificacin de libros, ya que cada libro actualmente publicado tiene un ISBN diferente de los dems. Smbolo L ? & C 0 9 Descripcin Letra (A a Z, entrada obligatoria) Letra (A a Z, entrada opcional) Cualquier carcter o un espacio (entrada obligatoria) Cualquier carcter o un espacio (entrada opcional) Dgito (0 a 9, entrada obligatoria, signos ms [+] y menos [-] no permitidos) Dgito o espacio (entrada no obligatoria, signos ms y menos no permitidos)
LLLL ISBN 0-???-0 ISBN &&&&& ISBN 0-CCC-0 (00) 0000-0000 (99) 0000-0000
Mscara
21
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Para ingresar el nmero de documento en Argentina, la mascara adecuada es 00.000.000. Para ingresar el Nmero de Telfono, la mscara adecuada es (99) 0000-0000
Valor predeterminado Valor que se inserta automticamente en el campo en cuestin al agregar un nuevo registro. Por ejemplo, en la base ALUMNO, en el campo Nacionalidad se podra ingresar el valor predeterminado Argentino. Al ingresar un nuevo alumno, por defecto, tendr nacionalidad argentina. Si el alumno fuera extranjero, deber ingresar el dato correcto desde la tabla. Pero piense el tiempo que se ahorra, ya que se evitar ingresar la nacionalidad para la mayora de los alumnos. Es muy til: ahorra tiempo, prubelo.
Regla de validacin Expresin que limita los valores que pueden introducirse en el campo, alertando al usuario que ha ingresado un dato invlido. Por ejemplo, para fecha de nacimiento de ALUMNO, se puede establecer la regla >#31/12/1980#, para que no ingrese ningn alumno de ms de 23 aos. Es muy til, no le parece? Evita el ingreso de datos que sabemos que necesariamente son incorrectos. Establecer este tipo de datos, da consistencia a la tabla, ya que se limitan los posibles errores, como por ejemplo, los errores de tipeo. El mensaje de error aparece cuando se introduce un valor prohibido por la regla de validacin. Ejemplo, para el caso anterior se podra introducir el siguiente texto: El alumno debe haber nacido despus del 31/12/11980 Por favor, mire la imagen anterior para ver cmo introducimos este texto. La imagen de la derecha es el mensaje de error que aparece si no se cumple con la regla de validacin.
Texto de validacin
Requerido Si el valor es s (Yes), la entrada de datos en el campo es obligatoria. Las claves principales son requeridas siempre. El campo grado de la tabla MAESTRO podra ser requerido, si se quisiera exigir que no exista ningn maestro sin grado asignado. Si establece la propiedad requerido para este campo, e intenta ingresar un maestro sin grado, un mensaje le alertar que debe ingresar este dato. Establecer este tipo de propiedad, da consistencia a los datos ya que garantiza la existencia de la informacin considerada fundamental.
22
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Indexado Un ndice acelera las bsquedas y ordenamientos, pero puede hacer ms lentas las actualizaciones. Puede optar por indexar el campo con o sin duplicados. Use esta ltima opcin, si desea asegurarse de que no existan dos registros con los mismos datos en este campo. Por ejemplo, podra indexar con duplicados el campo apellido, para acelerar las bsquedas. Permitir longitud cero Slo se aplica a los campos de tipo texto, memo e hipervnculo. Permite ingresar un dato como nulo o como de longitud 0. Qu diferencia hay? Recuerda el concepto de valor nulo? Un campo puede dejarse en blanco por dos motivos: porque la informacin se desconoce en ese momento porque el campo no se aplica al registro. Por ejemplo, si una tabla tiene un campo Nmero de Fax puede dejarlo en blanco s: - No sabe el nmero de fax del cliente. - Si el cliente no tiene nmero de fax. Para una situacin de este tipo debe: - Dejar el campo en blanco si desconoce si tiene fax. - Introducir dobles comillas ("") si esta seguro que NO tiene fax. Por ejemplo, se podra permitir longitud 0 en el campo Nacionalidad. En el caso de ingresar un valor nulo, se estar indicando que no se conoce esta informacin. Deje el casillero en blanco ya que el uso de comillas indicara S que no tiene nacionalidad. Un disparate.
Para los otros tipos de datos, se explicita slo las caractersticas particulares. A falta de aclaracin, vale lo explicado para campos de tipo texto NUMRICO Tamao del campo El tamao y tipo de nmeros a introducir en el campo. Los ms comunes son entero largo y doble. Formato (Format) Permite personalizar la forma en que los nmeros se muestran e imprimen. Puede utilizar uno de los formatos predefinidos o bien puede crear un formato personalizado mediante los smbolos de formato. Por ejemplo, puede hacer que si escribe 4321, el nmero se muestre automticamente como $4.321,00. Es ms fcil elegir esta opcin que escribir una mascara. Por favor, mire el desplegable. Puede usar esta opcin para el campo arancel de la tabla ACTIVIDAD.
23
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Lugares decimales Especifica el nmero de lugares decimales que utiliza Access para presentar nmeros. Esta propiedad afecta slo al nmero de lugares decimales que se muestran y no al nmero de decimales que se almacenan (esto ltimo se modifica desde la propiedad Tamao del campo). Por ejemplo, debera usar dos decimales para registrar el arancel de una actividad. Mscara de entrada Vale lo explicado para campos de tipo texto (Text). Puede definir una mscara de entrada mediante los siguientes caracteres: Smbolo 0 9 # Descripcin Dgito (0 a 9, entrada obligatoria, signos ms [+] y menos [-] no permitidos) Dgito o espacio (entrada no obligatoria, signos ms y menos no permitidos) Marcador de posicin de dgitos. Muestra un dgito o nada. Mscara Valores
(00) 0000-0000 (11) 4783-0793 (99) 9999-9999 #.##0,00 ( ) 4783-0793 2,00 34,00
Puede usar la mascara #.###,00 para que el nmero 4321 se muestre automticamente como 4.321,00.
Regla de Validacin Vale lo explicado para campos de tipo texto (Text). Puede definir en la tabla ACTIVIDAD, la regla de validacin arancel > 0, para permitir nicamente la inclusin de valores mayores a este valor. MONEDA Las propiedades son las mismas que el tipo de datos numrico (Number), salvo que moneda (Currency) no tiene la propiedad Tamao del campo (Field Size).
24
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
FECHA/HORA Formato (Format) Permite personalizar la forma en que las fechas y las horas se muestran e imprimen. Puede utilizar uno de los formatos predefinidos o bien puede crear un formato personalizado mediante los smbolos de formato. Los formatos predeterminados son: Fecha larga: Sbado, 3 de Abril de 1993 Fecha mediana: 3-Abr-93 Fecha corta: 3/4/93 Puede usar el formato Fecha Corta para ingresar la fecha de Nacimiento de los Alumnos. AUTO NUMRICO Tamao del campo Un campo Auto numrico (Auto Number) puede generar dos tipos de nmeros: enteros largos e ID. de rplica. Los enteros largos son los ms comunes y los ms adecuados para utilizar como clave principal de una tabla. Los de ID. de rplica se utilizan en las rplicas de base de datos con el fin de generar identificadores nicos para sincronizar rplicas.
Nuevos Valores Esta propiedad esta disponible slo, si eligi Enteros largos en Tamao del campo. Seleccione Incrementalmente para que los valores se incrementen de uno en uno. Seleccione Aleatoriamente para que se asigne a los registros nuevos un valor aleatorio. Cuando crea un campo Auto numrico (Auto Number), por defecto es secuencial. Para crear un campo Auto numrico aleatorio, en la parte inferior de la ventana, en la ficha General, establezca la propiedad Nuevos valores (New Values) a Aleatoriamente (Random). En la base ALUMNO, utilice siempre el tipo secuencial.
25
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
S/NO Formato Permite personalizar la forma en que este campo se muestra e imprime. Puede elegir entre S/No (Yes/No), Verdadero/Falso (True/Fals), Activado/Desactivado o un formato personalizado. Bueno, ya tiene todos los conocimientos necesarios para modificar y personalizar cada una de las tablas. Por favor, realice esta tarea antes de continuar. Si se equivoca, siempre esta a tiempo de modificar. No pierda la oportunidad de hacer todas las personalizaciones de una tabla que crea conveniente. Juegue un poco con ellas. Ahorra mucho trabajo en el momento de llenar la base y dan consistencia a nuestro trabajo. Si tiene dudas, en esta seccin de la vista diseo tiene una importante ayuda (Recuadro rojo).
26
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
27
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
28
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Distrito Escolar
Poblacin Total 2.965.403 280.155 262.701 141.301 92.749 99.358 160.076 170.302 147.786 263.410 232.732 109.189 115.954 115.348 101.542 107.857 88.061 131.191 104.479 57.960 91.157 92.095
Superficie en km2 200,0 14,5 7,6 6,0 10,5 11,6 4,9 7,2 6,2 17,0 14,9 7,1 6,2 10,7 9,1 8,2 7,7 9,3 8,8 8,2 9,0 15,3
Total Distrito Escolar N 1 Distrito Escolar N 2 Distrito Escolar N 3 Distrito Escolar N 4 Distrito Escolar N 5 Distrito Escolar N 6 Distrito Escolar N 7 Distrito Escolar N 8 Distrito Escolar N 9 Distrito Escolar N 10 Distrito Escolar N 11 Distrito Escolar N 12 Distrito Escolar N 13 Distrito Escolar N 14 Distrito Escolar N 15 Distrito Escolar N 16 Distrito Escolar N 17 Distrito Escolar N 18 Distrito Escolar N 19 Distrito Escolar N 20 Distrito Escolar N 21
Elimine esta fila 14.827,02 Elimine esta fila Elimine esta fila 19.321,00 34.565,90 23.550,20 8.833,20 8.565,30 32.668,60 23.653,10 23.836,50 15.494,70 15.619,60 15.378,70 18.702,30 10.780,20 11.158,50 13.153,30 11.436,50 14.106,60 11.872,60 7.068,30 10.128,60 6.019,30
29
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Haga la prueba importe el siguiente cuadro. http://www.indec.mecon.gov.ar/censo2001s2/Datos/02000c21.xls Tambin podr bajarla de www.cursogis.com.ar/BasesP/Bases2.htm > Link Tabla Distritos Esta tabla es muy parecida a la tabla con la cual estuvimos trabajando. Realice los cambios necesarios. Cuando este listo, podr importarla. A continuacin, utilice el comando Archivo > Obtener datos externos > Importar (File, Get External Data, Import).
En el cuadro de dilogo Importar, en el cuadro Tipo de archivo seleccione Microsoft Excel (*.xls). Busque el archivo de la hoja de clculo (en la unidad y la carpeta donde est ubicado) y haga doble click en su icono. Despus siga las indicaciones de los cuadros de dilogo del Asistente para importar hojas de clculo, que incluso le preguntar si desea copiar los datos a una tabla nueva o existente.
30
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Repetimos dos consejos: Haga copias de seguridad en forma peridica. Compacte la base de datos para que utilice menos espacio.
31
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Por favor verifique antes de realizar las relaciones que los campos deben ser del mismo tipo Ej.: deben ser los dos de texto, o los dos numricos Adems deben coincidir todas las dems relaciones, como ser mscaras de entrada, validaciones, requerimientos. No es imprescindible que los nombres de los campos a relacionar coincidan, aunque es aconsejable. Para definir una relacin, es necesario abrir la ventana Relaciones (Relationships), con el botn que se encuentra en la barra del men.
En el men Mostrar Tabla que aparece a continuacin, haga doble click en todas las tablas (o bien un solo click, y luego presionar el botn Agregar). Agregue todas las tablas que mantienen relaciones. Cuando termine, haga click en Cerrar (Close). Puede modificar el tamao o posicin de las tablas como en cualquier ventana de Windows. Nosotros las hemos ubicado de esta manera:
32
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Para definir una relacin entre los campos de dos tablas, debe hacer click en uno de los campos, y sin soltar el botn del Mouse, arrastrarlo hasta el campo clave de la otra. Pruebe con DNI_Alumno de la tabla ALUMNO y la tabla INFO_SALUD. Como usted puede comprobar, estos dos campos se llaman de la misma forma. Pero debe recordar que NO es una condicin necesaria. Lo importante es que los dos campos a relacionar sean del mismo tipo: los dos numricos (Number) o los dos de texto (Text), por ejemplo. Aparece la pantalla Modificar relacin (Edit Relationships). Esta ventana tiene un cuadro de texto que indica el tipo de relacin (Relationship type). En este caso es Uno-a-Uno. Tambin posibilita Exigir integridad referencial (Enforce Referential Integrity). Qu es esto? Se lo explicamos en los prrafos siguientes.
33
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
CMO GARANTIZAR LA COHERENCIA DE LOS DATOS RELACIONADOS Microsoft Access plantea un sistema de reglas para garantizar que las relaciones entre los registros de tablas relacionadas sean vlidas y que no se eliminan ni modifican accidentalmente datos relacionados. Para explicitar estas reglas, plantemos un ejemplo: la relacin entre la Tabla ALUMNO y MAESTRO, a la cual le hemos planteado que cumpla todas las reglas que plantea la pantalla (Recuadro Rojo).
Si hacemos click en Exigir Integridad Referencial (Enforce Referential Integrity), no se puede introducir un valor en el campo de clave externa (identificador secundario) de la tabla relacionada que no exista como clave principal de la tabla principal. No obstante, puede introducir un valor Nulo en la clave externa
En otras palabras, no puede introducir un valor en el campo Legajo_Maestro de la Tabla ALUMNOS que no exista en la tabla MAESTRO. Es correcto que esta regla se cumpla. No le parece? En una escuela, no debera haber alumnos con maestros desconocidos por el establecimiento. Pero como puede suceder que desconozca quien es el maestro del alumno, le puede asignar un valor Nulo. Un ejemplo: un alumno que recin ha ingresado al colegio y todava no se ha decidido por el turno tarde el turno maana, donde los maestros no son los mismos.
Por otra parte, no se puede eliminar un Por ejemplo, no puede eliminar un MAESTRO si existen registro de una tabla principal si existen alumnos que dependen del mismo. registros coincidentes en una tabla relacionada. Con el mismo criterio, no se puede Por ejemplo, no se puede cambiar el N de legajo de un cambiar un valor de clave principal Maestro si hay alumnos que figuran en nuestros registros como en la tabla principal si ese registro tiene cursando con ese docente. registros relacionados. Si desea que Microsoft Access exija esas reglas para una relacin, seleccione la casilla de verificacin Exigir Integridad Referencial al crear la relacin. Si se exige la Integridad Referencial, e infringe una de las reglas con las tablas relacionadas, Microsoft Access muestra un mensaje y no permite el cambio.
34
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Debajo de Exigir integridad referencial hay dos Check Box ms: Actualizar en cascada los campos relacionados (Cascade Update Related Fields): el cambio de un valor de clave principal en la tabla principal actualiza automticamente el valor coincidente en todos los registros relacionados. Eliminar en cascada los registros relacionados (Cascade Delete Related Records): la eliminacin de un registro en la tabla principal elimina todos los registros relacionados en la tabla relacionada Si modifica N de legajo de un Maestro, todos los registros de la tabla ALUMNO a cargo del maestro, tambin se actualizarn. Esta regla es muy conveniente y prctica. Ahorra mucho trabajo.
Si borra un maestro, todos los alumnos a su cargo se borrarn. Es una regla peligrosa. Cuidado, que se retire un maestro de una institucin educativa por cualquier motivo, no implica que los alumnos tambin abandonen la institucin. Yo le recomiendo no usar esta regla, salvo en casos en que este absolutamente seguro de la necesidad de la accin de eliminar.
Ahora pulse en Crear (Create). La primera relacin ha quedado establecida! Access, para indicar que entre dos tablas existe una relacin, las une con una lnea y coloca de cada lado el smbolo que corresponda segn el tipo de relacin de que se trate. Para indicar una relacin Uno-aUno, coloca un 1 de cada lado, como se ve en . Y si la relacin es Uno-a-Muchos coloca un 1 y un respectivamente .
35
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
Arme Ud. las dems relaciones. Piense en cada caso, si es conveniente o no exigir Integridad Referencial. A continuacin y entre parntesis, le indicamos los campos a travs de los cuales debe llevar a cabo cada relacin (arrastrando y soltando) ALUMNOS (DNI_Alumno) REALIZA (DNI_Alumno) REALIZA (Cdigo Actividad) ACTIVIDADES (Cdigo Actividad) ALUMNOS (DNI_Responsable) RESPONSABLES (DNI_Responsable) ALUMNOS (Legajo Maestro) MAESTROS (Legajo) Faltan otras relaciones que deber incorporar de acuerdo al caso que planteamos en la pgina 3. Este es el resultado esperado
36
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
37
Bases de datos para no especialistas. Prcticas con Access 2000- Arq. Mercedes Frassia
EVALUACIN
Esta evaluacin es slo para alumnos matriculados. Como se ha dicho en pginas anteriores, para pasar a la Clase N 3, Ud. deber completar los ejercicios en Microsoft Access. Completar todas las tablas del caso de aplicacin. Personalizar los campos. Realizar todas las relaciones del caso de aplicacin.
Si se encuentra ante una extrema dificultad en la resolucin de determinado ejercicio, podr consultar una base con los ejercicios resueltos. Visite http://www.cursogis.com.ar/BasesP/Bases2.htm Baje el archivo ESCUELA Consulte este archivo slo en caso de extrema necesidad. Trate de resolver los ejercicios por su cuenta ya que mi experiencia indica que en general, la resolucin de un problema ayuda y fortalece el aprendizaje. Posteriormente, enve un mail a base@cursogis.com.ar, notificando que su tarea esta finalizada y solicite la prxima clase.
38