2010 BertusSoft [CURSO DE MICROSOFT ACCESS] 2 CURSO DE MICROSOFT ACCESS Tabla de contenido Definiciones y Convenciones 6 Primera forma normal 9 Segunda forma normal 9 Tercera forma normal 9 Sentido común 10 Relaciones entre tablas 10 Relación uno a uno 10 Relación uno a muchos 11 Relación muchos a muchos 11 Crear una base de datos sin usar un asistente 19 Cambiar de nombre, eliminar, copiar o mover una base de datos o un proyecto de Access 24 Cambiar el nombre de una base de datos 24 Copiar o mover una base de datos o un proyecto de Access 25 Agregar un campo a una tabla en la vista Diseño 35 Definir relaciones entre tablas 42 Ver relaciones existentes 45 Modificar una relación existente 45 Eliminar una relación 45 Imprimir la ventana Relaciones 46 Quitar un filtro de una tabla, una consulta o un formulario 49 Ordenar los registros de una tabla, consulta o formulario 50 Consideraciones para ordenar registros 50 Ordenar registros en la vista Formulario u Hoja de datos 51 Ordenar registros mediante la cuadrícula de diseño de una consulta o un filtro avanzado 51 Abrir o ejecutar una consulta 52 Abrir una consulta en la vista Diseño 52 Ver los resultados de una consulta de selección o de tabla de referencias cruzadas 53 Quitar una tabla o consulta de una consulta 54 Tipos de Consulta 54 Crear un formulario con un asistente 63 Abrir un formulario 66 Vistas de un formulario 66 Guardar un formulario 67 Eliminar un formulario 67 Para mostrar datos 70 Para mostrar texto o etiqueta 70 Para calcular un total 71 2 3 CURSO DE MICROSOFT ACCESS Para dar formato 71 Para mover 71 Para ajustar el tamaño 72 Para alinear 72 Subformularios 72 Crear un subformulario y agregarlo a un formulario existente 73 Abrir un informe 75 Crear un informe mediante un asistente 75 Guardar un informe 77 Eliminar un informe 78 Crear un informe vacío y seleccionar el origen de los registros 78 Ordenar los registros en un informe 79 Agrupar registros en un informe 80 Agregar o quitar un encabezado y pie de informe o un encabezado y pie de página 81 Controles 81 Para mostrar datos 82 Para mostrar texto o etiqueta 82 Para calcular un total 83 Para dar formato 83 Para mover 83 Para ajustar el tamaño 84 Para alinear 84 Establecer las opciones de configuración de página para una tabla, consulta, formulario o informe 84 Ver una vista previa del diseño de un informe 85 Ver una vista previa de los datos de un informe 86 Datos de orígenes de registros no relacionados en un informe principal con dos subinformes 86 Datos de un origen de registros en un informe principal y un subinforme 87 Datos de orígenes de registros relacionados en un informe principal y dos subinformes 87 Crear un subinforme 88 Crear un subinforme en un informe existente 88 Agregar un informe existente a otro para crear un subinforme 88 Una secuencia de acciones 92 Un grupo de macros 92 Acciones condicionales 92 Crear una macro 93 Ejecutar una macro 93 Ejecutar una macro directamente 93 Crear un botón de comando en un formulario que ejecuta una consulta o una macro 94 Crear un grupo de macros 94 3 4 CURSO DE MICROSOFT ACCESS Hacer una copia de seguridad de una base de datos 94 Compactar una base de datos para desfragmentar el archivo y obtener espacio adicional en el disco 95 Compactar la base de datos o proyecto de Access actual 95 Compactar una base de datos o un proyecto de Access que no está abierto 96 Compactar automáticamente una base de datos o proyecto de Access al cerrarlos 96 Optimizar el rendimiento de la base de datos de Access mediante el Analizador de rendimiento 97 Automatización con Microsoft Access 98 Utilización de objetos de datos ActiveX en Microsoft Access 2000 99 Soluciones para el acceso a datos locales 100 La Situación 100 La Solución 100 Modelo básico de programación ADO 101 Modelos de objeto 101 Uso del espacio de trabajo Microsoft Jet 102 Uso del Modelo de objetos ODBCDirect 103 Novedades del trabajo con otras aplicaciones 104 Novedades sobre cómo trabajar en Internet 104 Importar datos 105 Vincular datos 105 Trabajar con un proyecto de Access 106 4 5 CURSO DE MICROSOFT ACCESS Fundamentos para diseño de aplicaciones y bases de datos La importancia de la información en la mayoría de las organizaciones, y por tanto el valor de las bases de datos, ha llevado al desarrollo de una gran cantidad de conceptos y técnicas para la gestión eficiente de los datos. La gestión de datos implica tanto la definición de estructuras para el almacenamiento de información como la provisión de mecanismos para la gestión de información. Las bases de datos permiten la definición y almacenamiento de la información, y los sistemas manejadores de bases de datos proveen los mecanismos para su gestión. Se define una base de datos como una colección de datos interrelacionados almacenados juntos sin redundancia perjudicial e innecesaria para servir a múltiples aplicaciones. Los datos son almacenados de tal manera que: Sean independientes de los programas que los usan. Presentan un enfoque común y controlado para agregar nuevos datos, actualizarlos o eliminarlos. Su estructura sirve de fundamento al desarrollo de futuras aplicaciones. Entre las ventajas más importantes de una base de datos podemos resaltar: 1. Mínima redundancia de información. 2. Consistencia de datos. 3. Compartimiento de datos. 4. Seguridad de datos. 5. Integridad de datos. 6. Independencia de datos. La aparición de los Sistemas Manejadores de Bases de Datso (Data Base Management Systems DBMS) tuvo, y tiene, una gran influencia en los sistemas de información, no sólo desde el punto de vista de la organización de los servicios informáticos, sino sobre todo en el análisis de sistemas de información. Un DBMS es una colección de datos interrelacionados y un conjunto de programas para acceder a esos datos. El objetivo primordial de un DBMS es proporcionar un entorno que sea a la vez conveniente y eficiente para ser utilizado al extraer y almacenar información de la base de datos. Además los DBMS deben mantener la seguridad de la información almacenada, pese a caídas del sistema o intentos de accesos no autorizados. Si los datos van a ser compartidos por varios usuarios, el sistema debe evitar posibles resultados anómalos. Procesos básicos para crear una aplicación El desarrollo de una aplicación, enmarcada dentro de un Sistema de Información, implica varias fases, tales como: Fase I Fase II Fase III Fase IV Fase V Fase VI Levantamiento de Información Diseño de la base de datos Diseño de entradas y salidas de información del Sistema Implementación el Sistema Implantación y pruebas del Sistema Puesta en marcha del Sistema 5 6 CURSO DE MICROSOFT ACCESS Entre los procesos básicos definidos para crear una base de datos estan: 1. Definir el propósito de la base de datos. 2. Definir la estrategia de desarrollo de la base de datos. 3. Diseño de la base de datos. 4. Definición de las consultas. 5. Determinación de los formularios y reportes requeridos. 6. Diseño de la interfaz con el usuario. El Modelo Entidad-Relación Un buen diseño es la clave para la creación de una buena base de datos. Una base de datos bien diseñada puede conducir a un uso más eficiente de las tablas, consultas, formularios e informes, aumentando así la legibilidad de la información extraída. Además, una base de datos diseñada de forma eficiente será más fácil de ampliar a medida que crezcan y cambien los requerimientos de la información en su organización. Para establecer cual es la información utilizada en una organización y gestionarla a través de una base de datos eficiente, es necesario la aplicación de técnicas y herramientas adecuadas que garanticen que dicha información está definida con precisión y consistencia. El Modelamiento Entidad Relación es una de las técnicas más usadas para desarrollar modelos de datos de alta calidad, los cuales proveen una manera estándar en la definciión de los datos y las relaciones entre los datos de todos los sistemas de información, incrementando de esta manera la productividad de los programas y mejorando la calidad del sistema. Al producto que resulta de aplicar esta técnica se le denomina Modelo Entidad Relación. De manera sencilla, el Modelamiento Entidad Relación identifica los objetos de importancia en una organización (Entidades), las propiedades de estos objetos (Atributos) y cómo están relacionados unos con otros (Relaciones). Pero cada uno es evaluado dentro del contexto de cada negocio y cómo las funciones del negocio actúan sobre este modelo de información. Los objetivos del Modelamiento Entidad relación son los siguientes: Proveer un modelo exacto de las necesidades de información de la organización, que permitan desarrollar nuevos sistemas y mejorar los existentes. Proveer un modelo independiente de cualquier medio de almacenamiento de datos y métodos de acceso, que permitan tomar decisiones objetivas en cuanto a las técnicas de implantación y la coexistencia con otros sistemas. Definiciones y Convenciones Entidad: es una cosa u objeto de importancia, real o imaginaria, de la cual se necesita conoce o mantener información. Un cliente, una orden de compra, una colección de libros, etc., son objetos reales de una librería, de las cuales se pudiera querer almacenar información, constituyéndose de esta manera la entidad CLIENTE, ORDEN y LIBROS, para cada objeto respectivamente. Una entidad se representa gráficamente mediante un rectángulo con las puntas redondeadas (caja) con un nombre, tal como se muestra en la figura: 6 7 CURSO DE MICROSOFT ACCESS Ejemplos: Atributos: es cualquier detalle que sirva para calificar, identificar, clasificar, cuantificar o expresar el estado de una entidad o cualquier descipción de la cosa de importancia. En este sentido la entidad CLIENTE tendría como atributos el nombre, el número de la cédula de identidad, la dirección, el teléfono, la compañía a la cual representa, etc. CLIENTE: Nombre, Cédula, Dirección, Teléfono, Compañía Relación: es una asociación significativa entre dos entidades. Una relación es binaria, en el sentido que siempre es una asociación entre exactamente dos entidades o entre una entidad consigo misma (relación recursiva). Cada relación tiene dos puntos terminales y para cada uno de ellos hay un nombre (rol), un grado o cardinalidad (cuántos) y una opcionalidad (opcional u obligatorio). Una relación se representa gráficamente mediante una línea que une dos cajas o recursivamente una caja consigo misma. Relación entre dos entidades Relación recursiva De esta manera se pueden relacionar las entidades CLIENTE y ORDEN con la relación “Un cliente hace un pedido”. Clave Primaria: es un atributo o una combinación de atributos que permite identificar univocamente a una entidad, es decir, distinguir cada instancia u ocurrencia de otra en la misma entidad. 7 8 CURSO DE MICROSOFT ACCESS Así el número de la cédula de identidad identifica y distingue a una instancia de otra que esté almacenada en la entidad CLIENTE. El número de ISBN identifica y distingue un libro de otro en la entidad LIBROS. El número de la orden de compra identifica una orden de otra en la entidad ORDEN. Bases de Datos Relacionales El término Base de Datos puede ser utilizado para describir una serie de datos relacionados. Esto puede ser desde una hoja de cálculo de Excel, pasando por el motor de bases de datos de Access (conocido como Microsoft Jet) y llegando a una Base de Datos Relacional cómo Oracle o Microsoft SQL Server. En este curso hablaremos de las bases de datos relacionales. Una filosofía de almacenamiento de datos que se concentra en tablas, consultas, filas, columnas, campos y registros. Tablas: una tabla es el lugar donde almacenaremos datos específicos de un objeto en particular. En una tabla vamos a colocar los datos de los objetos definidos como Entidades. Consultas: una consulta es un mecanismo de búsqueda y actualización de los datos almacenados en las tablas. A través de las consultas podemos ubicar un trabajador específico en una tabla de trabajadores o podemos actualizar el precio de todos los productos importados de Mozambique, almacenados en la tabla de productos. Las consultas son un mecanismo poderoso y complejo. Su utilización exhaustiva permite explotar al máximo las capacidades de las bases de datos relacionales. Para lograr esto debemos conocer un lenguaje de consultas denominado SQL (Structured Query Language). Filas, Registros, Columnas, Campos y Atributos: las Columnas, Campos o Atributos comparten el mismo concepto. Son una serie de datos que componen el objeto o entidad. En el caso del objeto Producto los atributos o campos podrían ser Nombre, Descripción, Código, Precio, Existencia. Las Filas o Registros son todos los elementos que hemos almacenado en una tabla y que están formados por los campos. En este caso podemos ver un ejemplo de filas. Nombre Descripción Código Precio Existencia Mermelada Rosa Mermelada de Rosas M32458 2.000,00 150 Sabor Tropical Coco Rallado C32122 1.500,00 200 Siete Potencias Mariscos y Crustáceos P211231 2.800,00 100 En el ejemplo vemos tres filas o registros, formados por cinco campos, columnas o atributos que definen una tabla o Entidad. En resumen podemos decir que una tabla es un conjunto de datos compuesta de campos y llena de registros. Cada elemento que agregamos es un registro. Fila=Registro. Campo=Columna=Atributo. Clave Primaria: el o los campos (columnas, atributos) que identifican unívocamente una fila o registro se le asigna el nombre de clave primaria. La clave primaria se utiliza además, para acceder a un registro concreto y relacionar otras tablas. La clave primaria no puede tener valor nulo y su contenido no debe ser extenso. En el caso del ejemplo el campo Código identifica a cada uno de los registros, diferenciándolos unos de otros. Normalización La normalización implica seguir una serie de reglas de diseño para las bases de datos. La normalización ofrece varios beneficios: 8 9 CURSO DE MICROSOFT ACCESS 1. Elimina la información redundante. Muchas bases de datos, que no están normalizadas, obligan a introducir la misma información una y otra vez según se necesite. Eliminar la información redundante reduce la probabilidad de errores en la introducción de los datos y aumenta la efectividad de las correcciones, en el momento de detectar algún error. El mantenimiento de la base de datos es mucho más fácil porque los datos sólo se actualizan o eliminan en un sitio. 2. Reduce el tamaño de la base de datos. Dado que cada tipo de dato está almacenado sólo en un lugar, la base de datos no tiene que guardar la misma información repetida una y otra vez. 3. Simplifica las consultas. Cuando existen datos no relacionados en una misma columna, por ejemplo, nombres y apellidos juntos, hay muchos problemas al momento de hacer las consultas si necesitamos hacer una búsqueda sólo por apellidos. Las reglas de normalización se denominan Formas Normales. Hay varias formas normales y una serie de reglas especiales especiales adicionales. Primera forma normal La primera forma normal establece que cada campo debe tener un único valor indivisible, en algunos casos a este valor se le denomina atómico. Este campo debe ser único en la tabla, es decir, no pueden existir dos campos que almacenen la misma información en una tabla, por ejemplo, una tabla de evaluaciones para alumnos no debería tener campos llamados Examen1, Examen2, Examen3. Esto viola las reglas de la primera forma normal. En unas bases de datos que cumple con la primera forma normal, hay mayor probabilidad de establecer una clave primaria. Esto permite identificar cada fila de manera única respecto a otras filas dentro de la tabla. La búsqueda y los cálculos que afectan a una tabla que se encuentre en la primera forma normal son mucho más sencillos. Por ejemplo, si tuviéramos las columnas Examen1, Examen2, Examen3 en la tabla Evaluaciones, deberíamos programar una rutina que sumara las notas de cada examen para obtener el total. Si normalizamos esa tabla podemos utilizar el lenguaje SQL para que haga los cálculos por nosotros. Segunda forma normal Para que una tabla cumpla con la segunda forma normal, es necesario que antes esté en primera forma normal. La segunda forma normal obliga a la creación de tablas adicionales cuando alguna tabla tenga datos no tengan ninguna relación con la clave primaria. Si por ejemplo tenemos una tabla de alumnos y establecemos como clave primaria la cédula del alumno, encontraremos que el nombre o los teléfonos del profesor no tienen ninguna relación con la cédula del alumno. Estamos en presencia de una tabla que no cumple con la segunda forma normal. En el ejemplo anterior sólo tenemos que dividir la tabla creando una nueva que almacene los datos del profesor. Tercera forma normal La tercera forma normal sólo se cumple cuando la tabla está en segunda forma normal. Esta regla dice que ninguna columna, que no pertenezca a la clave primaria, puede depender del valor de otra columna. Por ejemplo, si almacenamos la fecha de nacimiento de un alumno, no deberíamos almacenar la edad. El valor de la edad depende directamente de la fecha de nacimiento del alumno. Otro ejemplo lo podemos encontrar si tenemos una tabla que maneje los detalles de la facturación. En caso de que la organización pueda dar descuentos a sus clientes, sólo deberíamos almacenar el porcentaje de descuento que se aplicará a cada producto, no deberíamos almacenar el precio final que cancelará el cliente dado que este campo depende del precio normal y del porcentaje de descuento. 9 10 CURSO DE MICROSOFT ACCESS Sentido común Hay situaciones donde las reglas deben romperse. Es difícil determinar con exactitud cuando hacerlo. El rendimiento de la aplicación es un factor fundamental para tomar la decisión de no cumplir con la normalización. Por lo general la primera y segunda formas normales no afectan en mayor medida el rendimiento de una aplicación. La tercera forma normal, sin embargo, podría degradar en gran medida la respuesta de nuestra base de datos. Imaginemos que existe una complicada fórmula para obtener un dato en base a otros datos de las columnas. Para cumplir con la tercera forma normal no deberíamos guardar ese dato calculado pero almacenar ese resultado podría aumentar muchísimo la velocidad de ejecución de un programa. Relaciones entre tablas Una vez creadas y normalizadas las tablas es necesario crear relaciones entre las mismas. Las relaciones entre las tablas evitan lo que se denomina en la jerga de base de datos Inconsistencia. La inconsistencia puede presentarse si una tabla hace referencias a datos inexistentes en otra tabla. Por ejemplo, tenemos una tabla Alumnos que tiene una columna llamada Carrera donde se almacena la carrera que está cursando dicho alumno. Dado que nuestra tabla está normalizada, no encontraremos los nombres de las carreras, sólo una clave que nos permita buscar ese nombre en otra tabla. Si esa clave no existe en la otra tabla nos encontramos ante un caso de inconsistencia. Tabla ALUMNO: Nombre Cédula Carrera Luis Sánchez 14.856.256 001 Rosa Martínez 15.562.348 003 Laura Morillo 15.321.564 004 José Bravo 14.147.458 008 Tabla CARRERA: Código Nombre 001 Ingeniería 002 Contaduría 003 Sistemas 004 Biología 005 Matemáticas El código de carrera 008 asignado al Alumno José Bravo no existe en la tabla Carrera, por lo tanto se ha generado una inconsistencia. Cuando creamos una aplicación que maneja bases de datos, es necesario considerar las relaciones entre las tablas que componen dicha base de datos. Hay tres tipos de relaciones en una base de datos: uno a uno, uno a muchos y muchos a muchos. Relación uno a uno En una relación uno a uno, cada registro o fila en una tabla corresponderá a un registro o fila en otra tabla. Esta relación no es muy común. Esta relación es útil por motivos estratégicos. Imagine que va a desarrollar una base de datos que contenga información con muchas fotografías u otro tipo de datos muy grande. Debido a la carga que implica tener las fotografías dentro de la tabla es posible aplicar varias estrategias que eviten dicha sobrecarga. Una de ellas es sencillamente dividir la tabla para que las fotografías estén en una tabla separada. Luego se relacionan las fotografías con la tabla que contiene el resto de los datos. Esta estrategia sólo funciona si las fotografías son una información 10 11 CURSO DE MICROSOFT ACCESS opcional cuando se realizan consultas a los datos, es decir, el usuario puede en algún momento solicitar las fotografías pero no es siempre necesario. Otra ventaja de la relación uno a uno se presenta cuando hay limitaciones del número de columnas que puede almacenar una base de datos. En el caso de una base de datos Microsoft Jet (las utilizadas por Access), el límite de columnas que puede tener una tabla es de 256. Aunque es muy poco probable encontrar tablas que superen ese tamaño, existe la posibilidad. Cuando nos enfrentemos a dicha limitación lo más aconsejable es dividir la tabla y establecer una relación uno a uno. Relación uno a muchos Se presenta cuando una fila en una tabla corresponde a muchas filas en otra tabla. Se conoce también como una relación Padre/hijo. Un registro en una tabla padre puede tener muchos hijos. Este sería el caso de la relación entre una tabla Facturas y una tabla Detalles Factura. Una factura puede tener varias líneas que se verán reflejadas en la tabla Detalles Factura. Cada uno de los registros de esa tabla pertenecerá a una sola línea de la tabla Facturas. Relación muchos a muchos En el mundo real es la más común de todas las relaciones. Una persona puede hablar muchos idiomas y cada uno de los idiomas es hablado por muchas personas; una empresa tiene muchos clientes y cada uno de los clientes a su vez es cliente de otras empresas. Este tipo de relación no puede implementarse en una base de datos relacional, sin embargo es necesario simularla a través de una tabla intermedia. Cuando creamos una tabla intermedia por lo general sólo contiene los claves principales de las dos tablas que relaciona. Así una tabla que una los datos de estudiantes y profesores contendría sólo la cédula del alumno y la cédula del profesor (si es que las cédulas fueron elegidas como clave primaria de esas tablas). Diseño de una Base de Datos Decidir cuales son los objetos pertinentes en una aplicación y cuales no es un asunto de diseño. El diseño de una base de datos es complejo y requiere de conocimientos teóricos bastante profundos. El Modelamiento Entidad Relación permite generar un modelo donde cada entidad se puede representar como una tabla, y los atributos como los campos de la tabla. Las relaciones a su vez se representan como tablas cuyos atributos están formados por los campos claves de las tablas relacionadas. A pesar de todo, es posible, en sistemas muy sencillos, actuar de manera intuitiva. Tomemos el ejemplo de una aplicación que nos permita llevar el control de los discos que tenemos en casa. Para este sencillo ejemplo podemos deducir que vamos a tener una tabla con los siguientes atributos. Título Artista Estilo Año Disquera Alibombo Payasitas Ni Fu Ni Fa Infantil 1980 Sonográfica Nevermind Nirvana Grunge 1992 Sony Music Serenatas Wolfgang A. Mozart y Danzas Clásico 1995 Sony Music In Utero Gruge Sony Musc Nirvna 1993 Esto se parece mucho a una hoja de cálculo de Excel. Podemos trabajar perfectamente con esta tabla, sin embargo no está libre de problemas. 11 12 CURSO DE MICROSOFT ACCESS Aquellos lectores atentos habrán notado que el último registro tiene errores en las columnas Artista, Estilo y Disquera. Esto se conoce como Inconsistencia de Datos. Hay varias formas de eliminar la inconsistencia (la más inmediata es despedir al transcriptor). Una de las razones clave del uso de una base de datos relacional es eliminar la inconsistencia. Esto lo conseguimos creando tablas adicionales que guarden los datos que se repiten. En este caso en lugar de sólo tener una tabla tendríamos cuatro. En la primera tabla guardamos los Artistas y un código: Código Artista 1 Payasitas Ni Fu Ni Fa 2 Nirvana 3 Wolfgang A. Mozart Una segunda tabla nos permite almacenar el estilo de música: Código Estilo 1 Infantil 2 Grunge 3 Clásico 4 Salsa La tabla Disquera para las empresas disqueras: Código Disquera 1 Sonográfica 2 Sony Music 3 Sonorodven Y para finalizar la tabla Discos almacenando sólo el código de artistas, estilos y disqueras: Título Artista Estilo Año Disquera Alibombo 1 1 1980 1 Nevermind 2 2 1992 2 Serenatas y Danzas 3 3 1995 2 In Utero 2 2 1993 2 Sin embargo al momento de ver los datos, nos sirve de muy poco ver códigos. Para eso existen las consultas que unen todas las tablas y nos muestran la información final. Título Artista Estilo Año Disquera Alibombo Payasitas Ni Fu Ni Fa Infantil 1980 Sonográfica Nevermind Nirvana Grunge 1992 Sony Music Serenatas y Danzas Wolfgang A. Mozart Clásico 1995 Sony Music In Utero Nirvana Grunge 1993 Sony Music La consulta buscó cada uno de los códigos en la tabla correspondiente y devolvió el valor adecuado. De esta manera hemos evitado la inconsistencia (y el transcriptor salvó su trabajo). 12 13 CURSO DE MICROSOFT ACCESS Microsoft Access Microsoft Access es un sistema de gestión de bases de datos relacionales que permite almacenar y recuperar la información, de acuerdo con las relaciones que se hayan establecido, en las tablas de una base de datos. Las herramientas que utiliza Microsoft Access para llevar a cabo la gestión de la información almacenada en una base de datos se componen de objetos. El término objeto se refiere a cada una de las siguientes definiciones: Tabla Una tabla es una colección de datos sobre un tema específico, como productos o proveedores. La utilización de una tabla diferente para cada tema significa que se almacenan los datos sólo una vez, lo cual hace aumentar la eficacia de la base de datos, y reduce errores de entrada de datos. Los datos de la tabla se representan en columnas (campos) y filas (registros) siguiendo el modelamiento entidad relación. Consulta Una consulta es una pregunat que se plantea a Access sobre el contenido de una base de datos. Los datos que responden a la pregunta pueden provenir de una o varias tablas. Se utilizan consultas para ver, modificar y analizar datos de formas diferentes. También pueden utilizarse como el origen de registros para formularios, informes y páginas de acceso a datos. Formulario Un formulario es un diseño personalizado para introducir, modificar y ver los registros de una base de datos. Al diseñar un formulario se especifica la posición y colores para resaltar datos, la presentación de mensajes y la posibilidad de introducir datos en varias tablas a la vez. Páginas Una página de acceso a datos es un tipo especial de página Web diseñada para ver datos y trabajar con ellos desde Internet o desde una intranet; los datos están almacenados en una base de datos de Microsoft Access o en una base de datos de Microsoft SQL Server. La página de acceso a datos también puede incluir datos de otros orígenes como, por ejemplo, Microsoft Excel. Informes Un informe es un objeto que permite imprimir registros con un diseño personalizado. Un informe es un método eficaz de presentar los datos en formato impreso. Dado que tiene el control sobre el tamaño y el aspecto de todo el informe, puede mostrar la información en la manera que desee verla. Mediante un informe se pueden agrupar registros, presentar los datos de un campo, los resultadoos de un cálculo, el texto para un título o mensaje, un gráfico e incluso otro formulario o informe. Macros Una macro es un conjunto de una o más acciones que cada una realiza una operación determinada, tal como abrir un formulario o imprimir un informe. Las macros pueden ayudar a automatizar las tareas comunes. Por ejemplo, puede ejecutar una macro que imprima un informe cuando el usuario haga clic en un botón de comando. Módulos Un módulo es una colección de declaraciones y procedimientos de Visual Basic para aplicaciones que se almacenan juntos como una unidad. 13 14 CURSO DE MICROSOFT ACCESS Una vez creadas tablas diferentes para cada tema de la base de datos de Microsoft Access, necesita una forma de indicarle a Microsoft Access cómo debe volver a combinar esa información. El primer paso de este proceso es definir relaciones entre las tablas. Una vez realizada esta operación, puede crear consultas, formularios e informes para mostrar información de varias tablas a la vez. Después de que haya conocido Microsoft Access y haya aprendido cómo crear tablas, consultas, formularios, informes, barras de comandos personalizadas, etc., puede agregar macros y código de Visual Basic para aplicaciones para unir todos estos objetos en una aplicación. Una aplicación organiza tareas relacionadas para que el usuario pueda centrarse en su trabajo, no en cómo trabaja la aplicación o en el programa usado para desarrollar la aplicación. Diseño de una base de datos con Microsoft Access Antes de utilizar Microsoft Access para crear las tablas, los formularios y los demás objetos que formarán la base de datos, es importante invertir algún tiempo en diseñar la base de datos. Independientemente de que esté utilizando una base de datos de Microsoft Access o un proyecto de Microsoft Access, un buen diseño de la base de datos es la pieza clave para crear una base de datos que realice las operaciones que desee de una forma efectiva, precisa y eficaz. Diseñar una base de datos que será implementada con Microsoft Access no difiere mucho de lo descrito anteriormente con respecto al diseño general de sistemas, y con el diseño del modelo entidad relación. Sin embargo al integrar dichos conceptos con los objetos propios de Microsoft Access podemos presentar los siguientes: Pasos para diseñar una base de datos en Access: 1. Determinar la finalidad de la base de datos: El primer paso para diseñar una base de datos es determinar su finalidad y cómo se utiliza. Debe saber qué información desea obtener de la base de datos. A partir de ahí, puede determinar sobre qué asuntos necesita almacenar hechos (las tablas) y qué hechos necesita almacenar sobre cada asunto (los campos de las tablas). Hable con los demás usuarios que utilizarán la base de datos. Piensen detenidamente en las preguntas que desean que responda la base de datos. Realice bocetos de los informes que desea que produzca. Reúna los formularios que utiliza actualmente para registrar los datos. Examine bases de datos bien diseñadas similares a la que va a diseñar. 2. Determinar las tablas que se necesitan: Determinar las tablas puede ser el paso más complicado del proceso de diseño de la base de datos. Esto se debe a que los resultados que desea obtener de la base de datos (los informes que desea imprimir, los formularios que desea utilizar, las preguntas para las que desea respuestas) no proporcionan pistas necesariamente acerca de la estructura de las tablas que los producen. No es necesario que diseñe las tablas mediante Microsoft Access. De hecho, posiblemente sea más conveniente realizar un boceto en papel de la base de datos y trabajar sobre el diseño primero. Al diseñar las tablas, divida la información teniendo en cuenta los siguientes principios de diseño fundamentales: a. Una tabla no debe contener información duplicada, y no debe duplicarse información entre tablas. A este respecto, una tabla de una base de datos relacional es diferente a una tabla de una aplicación de archivos simples como por ejemplo una hoja de cálculo. Cuando cada elemento de información está almacenado en una tabla, se actualiza en un solo lugar. Esto resulta más eficiente y elimina la posibilidad de que existan entradas duplicadas que contengan información diferente. Por ejemplo, probablemente desee 14 15 CURSO DE MICROSOFT ACCESS almacenar la dirección y el número de teléfono de cada cliente una sola vez en una sola tabla. b. Cada tabla debe contener información sobre un asunto: Cuando cada tabla contiene hechos sólo sobre un asunto, puede mantener la información acerca de cada asunto independientemente de otros asuntos. Por ejemplo, puede almacenar las direcciones de los clientes en una tabla diferente de los pedidos de los clientes, de modo que pueda eliminar un pedido y conservar a la vez la información sobre el cliente. 3. Determinar los campos que se necesitan: Cada tabla contiene información acerca del mismo asunto, y cada campo de una tabla contiene hechos individuales sobre el asunto de la tabla. Por ejemplo, la tabla de Clientes puede incluir los campos del nombre de la compañía, la dirección, la ciudad, el país y el número de teléfono. Al realizar bocetos de los campos para cada tabla, tenga en cuenta estas sugerencias: a. b. c. d. Relacione cada campo directamente con el asunto de la tabla. No incluya datos derivados ni calculados (datos que son el resultado de una expresión). Incluya toda la información que necesite. Almacene información en sus partes lógicas más pequeñas (por ejemplo, Nombre y Apellidos, en lugar del Nombre completo). 4. Identificar el campo o campos con valores únicos en cada registro: Para que Microsoft Access conecte información almacenada en tablas independientes (por ejemplo, para conectar a un cliente con todos los pedidos del cliente), cada tabla de la base de datos debe incluir un campo o un conjunto de campos que identifiquen de forma exclusiva cada registro individual de la tabla. Este campo o conjunto de campos se denomina clave principal. 5. Determinar las relaciones entre las tablas: Ahora que ha dividido la información en tablas y que ha identificado los campos de clave principal, necesita una forma de indicar a Microsoft Access cómo volver a reunir toda la información relacionada de un modo significativo. Para ello, debe definir relaciones entre las tablas en una base de datos de Microsoft Access. 6. Perfeccionar el diseño: Una vez diseñadas las tablas, los campos y las relaciones que necesita, es el momento de estudiar el diseño y detectar los posibles fallos que puedan quedar. Es más sencillo cambiar el diseño de la base de datos ahora que una vez que haya llenado las tablas con datos. Utilice Microsoft Access para crear las tablas, especificar relaciones entre las tablas e introducir suficientes datos de ejemplo en las tablas para poder comprobar el diseño. Para probar las relaciones de la base de datos, compruebe si puede crear consultas para obtener las respuestas que desee. Cree bocetos de los formularios e informes y compruebe si muestran los datos que desea. Busque duplicaciones de datos innecesarias y elimínelas. Si encuentra problemas, perfeccione el diseño. 7. Introducir datos y crear otros objetos de la base de datos: Cuando considere que la estructura de las tablas cumple los principios de diseño descritos anteriormente, es el momento de comenzar a agregar los datos existentes a las tablas. A continuación, puede crear las consultas, formularios, informes, páginas de acceso a datos, macros y módulos que desee. 15 16 CURSO DE MICROSOFT ACCESS 8. Utilizar las herramientas de análisis de Microsoft Access: Microsoft Access incluye dos herramientas que pueden ayudarle a perfeccionar el diseño de la base de datos de Microsoft Access. El Asistente para analizar tablas puede analizar el diseño de una tabla, proponer nuevas estructuras de tablas y relaciones si es conveniente y dividir una tabla en nuevas tablas relacionadas si es necesario. El Analizador de rendimiento puede analizar la base de datos completa y realizar recomendaciones y sugerencias para mejorarla. El asistente también puede implantar estas recomendaciones y sugerencias. El ambiente de trabajo de Microsoft Access A continuación se mostrarán los elementos básicos que se presentan en el ambiente de trabajo de Microsoft Access, así como las instrucciones para iniciar Access, salir de Access y cómo conseguir ayuda. Iniciar Access Para iniciar Microsoft Access haga clic en el botón Inicio de la barra de tareas de Windows, señale la opción Programas y seleccione Microsotf Access. En este momento aparecerá en pantalla una ventana auxiliar, como se muestra en la siguiente figura: En esta ventana podemos seleccionar entre crear una base de datos nueva o abrir una existente. Una vez que hacemos clic sobre el botón Aceptar, se presenta el ambiente de trabajo de Microsoft Acces, es decir, la ventana inicial: 16 17 CURSO DE MICROSOFT ACCESS En la ventana inicial de Access aparecen los siguientes elementos: Barra de Título Está ubicada en la parte superior de la ventana inicial y es donde aparece el nombre de la aplicación Microsoft Acces. Barra de Menú Aquí se encuentran los menúes (Archivo, Herramientas, Ayuda) que al desplegarse muestran un conjunto de opciones disponibles que reciben el nombre de comandos. Los menúes varían de acuerdo al objeto que se esté utilizando. Barra de Herramientas Presenta un conjunto de botones que permiten un acceso rápido a los comandos de Access que se utilizan con más frecuencia. Ventana de Microsoft Access Es esta área de la ventana inicial irán apareciendo las diferentes ventanas que permitirán la manipulación de los diferentes objectos de Access. Barra de Estado Se encuentra en la parte inferior de la ventana y ofrece información relativa a los comandos de los menúes o de las barras de herramientas. También ofrece información general sobre la operación que se está realizando. 17 18 CURSO DE MICROSOFT ACCESS Ayuda en Access Acces dispone de un conjunto amplio de ayudas a las que puede acceder el usuario. Estas ayudas proporcionan información adicional sobre las situaciones que pueden suceder durante una sesión de trabajo con Access. Información sobre la barra de herramientas A medida que desplace el apuntador del ratón por los botones de una barra de herramientas aparecerá, al lado del mismo, el nombre del comando que ejecutan. El Comando ¿Qué es esto? Haga clic con el botón derecho del ratón en el área acerca de la cual desee obtener ayuda y seleccione la opción ¿Qué es esto?, si está disponible para el elemento en cuestión. Otra manera es hacer clic sobre el comando ¿Qué es esto? del menú Ayuda, el apuntador del ratón toma forma de flecha con un signo de interrogación, luego haga clic sobre el elemento del cual desea obrtener más información. En ambos casos se despliega una ventana con la descripción del elemento seleccionado. El Ayudante de Office El Ayudante de Office puede responder a preguntas, ofrecer sugerencias y proporcionar ayuda acerca de las diferentes características específicas del programa de Office en que se eté trabajando. Para mostrar el Ayudante de Offcie selecione la opción Mostrar el Ayudante de Office del menú de Ayuda (?) o haga clic cobre el botón de ayuda de la barra de herramientas. Aparecerá el Ayudante de Office: Información detallada Seleccione el comando Ayuda de Microsoft Access del menú Ayuda. Aparecerá la ventana de Ayuda de Microsoft Access. Los archivos de ayuda se muestran en una ventana semejante a un explorador de tres paneles: 1. El panel superior contiene la barra de herramientas. 2. El panel izquierdo (de exploración) contiene las fichas Contenido, Asistente para Ayuda e Indice: a. Ficha Contenido: Para buscar un tema en la ayuda agrupado por materias. b. Ficha Indice: Para ver una lista de entradas de los temas de ayuda ordenada alfabéticamente. c. Asistente para ayuda: Para buscar las palabras o frases que pueden estar incluidas en un tema de Ayuda. 3. El panel derecho (de temas) muestra el tema seleccioando en el panel izquierdo. En un tema, puede hacer clic en las palabras subrayadas para ver otra información relacionada con el mismo. 18 19 CURSO DE MICROSOFT ACCESS Salir de Access Para salir de Access una vez finalizada la sesión de trabajo, existen dos opciones: 1. Seleccione la opción Salir del Menú Archivo 2. Haga clic sobre el botón Cerrar de la ventana de Microsoft Access. Crear una base de datos Del proceso inicial de diseño y planificación de una aplicación de bases de datos, se obtienen: La información de la actividad o de los objetos organizada en categorías de ideas principales o tablas, La información detallada y precisa (campos) que define a cada uno de los elementos de cada una de las tablas (registros), El o los campos que identificará de manera inequívoca a cada uno de los elementos de una tabla (clave principal) que es lo que permitirá crear conexiones o relaciones para tratar de manera global y compartida la información contenida en diferentes tablas. Microsoft Access proporciona dos métodos para crear una base de datos. Puede crear una base de datos en blanco y, posteriormente, agregar las tablas, formularios, informes y demás objetos que desee; este es el método más flexible, pero requiere definir por separado cada elemento de la base de datos. Alternativamente, puede utilizar el Asistente para bases de datos con el fin de crear en una operación las tablas, formularios e informes necesarios para el tipo de base de datos seleccionado; este es el método más fácil para iniciar la creación de una base de datos. Cualquiera que sea el método elegido, puede modificar y ampliar la base de datos en cualquier momento posterior a su creación. Crear una base de datos sin usar un asistente 1. Al iniciar Microsoft Access aparece automáticamente un cuadro de diálogo con opciones para crear una nueva base de datos o abrir una base de datos existente. Si aparece este cuadro de diálogo, haga clic en Base de datos de Access en blanco y luego en Aceptar. 19 20 CURSO DE MICROSOFT ACCESS Si ya tiene una base de datos abierta o si ha cerrado el cuadro de inicio, haga clic en Nueva base de datos en la barra de herramientas y luego haga doble clic en el icono Base de datos en la ficha General. 2. Especifique un nombre y una ubicación para la base de datos y haga clic en Crear. Después de crear una base de datos en blanco, debe seguir algunos pasos adicionales para definir los objetos que formarán su base de datos. 20 21 CURSO DE MICROSOFT ACCESS Crear una base de datos mediante el Asistente para bases de datos 1. Al iniciar Microsoft Access aparece automáticamente un cuadro de diálogo con opciones para crear una nueva base de datos o abrir una base de datos existente. Si aparece este cuadro de diálogo, elija Asistentes, páginas y proyectos de bases de datos de Access y luego seleccione Aceptar. Si ya tiene una base de datos abierta o si ha cerrado el cuadro de inicio, haga clic en Nueva Base de datos en la barra de herramientas. 2. En la ficha Bases de datos haga doble clic en el icono correspondiente al tipo de base de datos que desea crear. 3. Especifique un nombre y una ubicación para la base de datos. 21 22 4. CURSO DE MICROSOFT ACCESS Haga clic en Crear para empezar a definir su nueva base de datos. La Ventana de Base de Datos Una vez creada la base de datos, usando o no un asistente para ello, aparece en pantalla en el área de la venta de Microsoft Access la ventana de la Base de datos tal como se muestra a continuación: En la ventana de Bases de datos aparecen los siguientes elementos: Barra de Título Está ubicada en la parte superior de la ventana de Bases de datos y es donde aparece el nombre de la base de datos abierta. Barra de Herramientas Presenta un conjunto de botones que permiten un acceso rápido a los comandos para crear, abrir o modificar objetos de la base de datos. Barra de Objetos Presenta en orientación vertical los distintos objetos que pueden formar una base de datos: tablas, consultas, formularios, informes, páginas, macros y módulos. Para seleccionar un objeto primero se hace clic en la barra de 22 23 CURSO DE MICROSOFT ACCESS objetos en el tipo de objeto que se desea. Al hacer clic aparecen los nombres de los objetos existente en el área interna de la ventana. Barra de Grupos Facilita la organización de objetos de base de dtos en grupos, que pueden contener accesos directos a objetos de base de datos de distintos tipos. Área lista de Objetos Área que muestra los elementos existentes de un tipo de objeto. Si es una base de datos en blanco, únicamente se presentan los accesos a los diferentes modos de crear nuevos accesos. Abrir una base de datos de Microsoft Access 1. En el menú Archivo, haga clic en Abrir . 2. Haga clic en el cuadro Buscar en, haga clic en la unidad o carpeta que contenga la base de datos de Microsoft Access que desee. 3. En la lista de carpetas, haga doble clic en las carpetas hasta abrir la carpeta que contiene la base de datos. Si no encuentra la base, haga clic en Herramientas y, a continuación, en Buscar . En el cuadro de diálogo Buscar, especifique criterios de búsqueda adicionales. Si necesita Ayuda sobre una opción, haga clic en el signo de interrogación y, a continuación, en la opción. 4. Siga uno de estos procedimientos: Para abrir la base de datos para el acceso compartido en un entorno multiusuario, para que usted y otros usuarios puedan leer y escribir en la base de datos, haga clic en Abrir. Para abrir la base de datos con acceso en modo exclusivo, haga clic en la flecha situada junto al botón Abrir exclusivo . y, a continuación, haga clic en Abrir en modo Para abrir la base de datos para un acceso de sólo lectura, de modo que se pueda ver pero no modificar, haga clic en la flecha situada junto al botón Abrir continuación, haga clic en Abrir en modo sólo lectura. y, a Para abrir la base de datos para el acceso de sólo lectura, y evitar que otros usuarios puedan abrirla, haga clic en en la flecha situada junto al botón Abrir continuación, elija Abrir en modo exclusivo de sólo lectura. y, a Sugerencia: Para obtener Ayuda acerca de una opción del cuadro de diálogo, haga clic en el signo de interrogación de cierre y, a continuación, haga clic en el elemento. 23 24 CURSO DE MICROSOFT ACCESS Notas: Para abrir una de las últimas bases de datos que haya abierto, haga clic en el nombre de archivo en la parte inferior del menú Archivo. Microsoft Access abre la base de datos con la misma configuración de opciones que tenía la última vez que la abrió. Si no se muestra la lista de archivos abiertos recientemente, en el menú Herramientas haga clic en Opciones, haga clic en la ficha General y, a continuación, active la casilla de verificación Archivos usados recientemente. Microsoft Access puede crear automáticamente un acceso directo en la carpeta Favoritos, que le permitirá abrir la base de datos directamente la próxima vez que desee utilizarla. Puede abrir un archivo de datos directamente en un formato de archivo externo como por ejemplo el de dBASE, Paradox, Microsoft Exchange, Microsoft Excel, etc.; también puede abrir directamente cualquier origen de datos ODBC, tal como Microsoft SQL Server o Microsoft FoxPro. Microsoft Access crea automáticamente una nueva base de datos de Access en la misma carpeta que el archivo de datos y agrega vínculos a cada tabla en la base de datos externa. Cerrar una base de datos de Microsoft Access Una vez finalizado el trabajo con una base de datos, se debe cerrar. Para ello, se deben cerrar todos los objetos que estén abiertos y luego seleccionar la opción Cerrar del menú Archivo o hacer clic en el botón Cerrar de la Ventana de la base de datos. Cambiar de nombre, eliminar, copiar o mover una base de datos o un proyecto de Access Cambiar el nombre de una base de datos 1. Cierre la base de datos de Microsoft Access o el proyecto de Microsoft Access. En un entorno multiusuario, compruebe que todos los usuarios han cerrado la base de datos de Access. 2. Haga clic en Abrir en la barra de herramientas. 3. En el cuadro de diálogo Abrir, localice la base de datos o el proyecto de Access al que desee cambiar el nombre y, a continuación, haga clic en el archivo con el botón secundario del mouse (ratón). 4. En el menú contextual, haga clic en Cambiar nombre. 5. Escriba el nuevo nombre. Incluya la extensión .MDB o .ADP únicamente si ha configurado Microsoft Windows para que muestre las extensiones de archivo de MS-DOS y, a continuación, presione ENTRAR. El nombre del archivo puede tener hasta 255 caracteres, incluidos espacios. Nota: También puede cambiar el nombre de una base de datos o un proyecto de Access desde fuera de Access. Cierre el archivo, haga clic con el botón secundario en el archivo en el Explorador de Windows o en Mi PC y, a continuación haga clic en Cambiar nombre en el menú contextual. Eliminar una base de datos 1. Cierre la base de datos de Microsoft Access o el proyecto de Microsoft Access. En un entorno multiusuario, compruebe que todos los usuarios han cerrado la base de datos de Access. 2. Haga clic en Abrir en la barra de herramientas. 3. En el cuadro de diálogo Abrir, localice la base de datos o el proyecto de Access que desee eliminar y, a continuación, haga clic en el archivo con el botón secundario del mouse (ratón). 4. En el menú contextual, haga clic en Eliminar. 24 25 CURSO DE MICROSOFT ACCESS Notas: Si desea recuperar el archivo, busque en la Papelera de reciclaje. El archivo eliminado permanecerá en la papelera hasta que la vacíe. Al eliminar una base de datos o un proyecto de Access que incluye páginas de acceso a datos, no se eliminan los archivos HTML de la página. Al eliminar un proyecto de Access, no se elimina la base de datos de Microsoft SQL Server a la que está conectado el proyecto de Access. También puede eliminar una base de datos o un proyecto de Access desde fuera de Access. Cierre el archivo, haga clic con el botón secundario del mouse en el Explorador de Windows o en Mi PC y, a continuación, seleccione Eliminar en el menú contextual. Copiar o mover una base de datos o un proyecto de Access 1. Cierre la base de datos de Microsoft Access o el proyecto de Microsoft Access. En un entorno multiusuario, compruebe que todos los usuarios han cerrado la base de datos: 2. En Mi PC o en el Explorador de Windows, busque el archivo de base de datos (.MDB) o el archivo de proyecto (.ADP) y selecciónelo. Nota: Para seleccionar más de un archivo con el fin de copiarlos o moverlos, mantenga presionada la tecla CTRL y seleccione cada archivo. 3. Para copiar el archivo elija Copiar en el menú Edición. Para mover el archivo elija Cortar en el menú Edición. 4. Abra la carpeta o el disco donde desea situar el archivo. 5. En el menú Edición, elija Pegar. Para deshacer la operación de pegado, en el menú Edición elija Deshacer Copiar o Deshacer Mover. Notas: Cuando copia o mueve una base de datos o un proyecto de Access que contiene vínculos a páginas de acceso a datos, Access mantiene las páginas en su carpeta original y actualiza automáticamente los vínculos a las páginas para que funcionen como lo hacían anteriormente. Cuando copia o mueve un archivo de proyecto de Access, no copia ni mueve la base de datos de Microsoft SQL Server a la que está conectada el proyecto de Access. Sugerencia: Si el lugar de destino donde desea situar el archivo ya está visible, puede mover el archivo rápidamente arrastrándolo a su nuevo destino o bien puede copiar el archivo manteniendo presionada la tecla CTRL mientras lo arrastra. Importante Si cambia de nombre, elimina, copia o mueve una base de datos de Microsoft Access, y otra base de datos incluye vínculos a objetos en esa base de datos, utilice el Administrador para tablas vinculadas con esas otras bases de datos para actualizar la información sobre los vínculos. De lo contrario, se producirá un error en Access cuando intente utilizar esos objetos vinculados en la otra base de datos. Los vínculos a una página de acceso a datos sólo deben actualizarse si se cambian de nombre, eliminan o mueven los archivos .HTML de la página de acceso a datos. 25 26 CURSO DE MICROSOFT ACCESS Las Tablas Muchos negocios que utilizan bases de datos le restan importancia al diseño de las tablas. Se concentran más en el diseño de formularios y reportes, los cuales son visibles al usuario. Pero el diseño de las tablas y consultas de una base de datos afectará de manera significativa el desempeño de la aplicación. Hay que tomar en cuenta además que los formularios y reportes pueden alterarse sin afectar al resto de la aplicación. Cuando modificamos una tabla, sin embargo, debemos modificar todos los objetos que dependen de ella. Es posible que un cambio sencillo en alguna tabla signifique muchas horas de trabajo corrigiendo todos los objetos que utilizan sus datos. Las tablas son el bloque fundamental de las bases de datos. Cada tabla de una base de datos debe contener datos de sólo una entidad específica. Por ejemplo, una tabla de Clientes sólo debe contener información relacionada con los clientes: Nombres, Apellidos, Cédula y Dirección entre otras. En la tabla Clientes no debería haber información relacionada con los objetos que compra o los servicios que utiliza. Las tablas tienen una estructura muy similar a una hoja de cálculo. Cada fila representa una instancia de la entidad diseñada. Siguiendo el ejemplo anterior, cada fila de la tabla Clientes representa un cliente de la organización. En una tabla Productos existirá una fila por cada producto que exista en el inventario. No importa el orden en que se introduzcan las filas, una base de datos nos permite ordenar posteriormente de acuerdo al criterio necesario. En la tabla Clientes podríamos ordenar las filas por el nombre del cliente o por apellidos o quizá por el número de cédula. Cada columna o Campo debe mantener un tipo de información única. En una sóla columna no deberíamos colocar información de la cédula y el nombre. Debería existir una columna para cada información. La mayoría de la tablas poseen uno más campos que identifican a cada fila de manera única. Estos campos se llaman Clave Principal. De esta manera, si se quisiera crear una clave principal para la tabla Clientes, se podría elegir la cédula de identidad, esto garantiza la manera de identificar cada cliente. Diseñar una tabla para la base de datos no se limita a escoger las entidades y tablas. Es necesario almacenar los datos de la manera más eficiente posible y dando la mayor flexibilidad a la hora de consultar y modificar los mismos. Elementos de una tabla En la estructura de una tabla se destacan los siguientes elementos: Nombre de Campo El nombre de los campos puede estar formado por un máximo de 64 caracteres (letras, números, espacios en blanco o caracteres especiales). Es conveniente que estos nombres sean significativos (Apellido, Nombre, Cédula) para que el usuario pueda deducir los datos almacenados en el campo. Es aconsejable seguir las siguientes recomendaciones al colocar nombres a los campos: No incluir espacios dentro de los nombres de campo. Si se desea que un nombre de campo esté compuesto por más de una palabra, se pueden unir con el carácter de subrayado (_). Ejemplo: Notas_Mensuales. No utilizar caracteres especiales como $, &, @, #, %, Ç, etc. No llamar Nombre a los campos que contienen el nombre de personas, organizaciones o cosas para no crear confusiones. Ejemplo: Nombre_Empleado, Nombre_Cliente, Nombre_Producto, en vez del campo nombre en las tres tablas. 26 27 CURSO DE MICROSOFT ACCESS Tipos de Datos El tipo de datos que se especifique para un campo determina las siguientes características: Tipo de datos que almacenará el campo (texto, números, fechas, etc.). El espacio que Access reservará para almacenar el contenido del campo. Las operaciones que se podrán realizar sobre el campo. La posibilidad de utilizar el campo como clave principal. La siguiente tabla resume todos los tipos de datos de campo disponibles en Microsoft Access, su utilización y su tamaño de almacenamiento. Tipo de datos Utilización Tamaño Texto Texto o combinaciones de texto y números como, por ejemplo, direcciones. Asimismo, números que no requieren cálculos como, por ejemplo, números de teléfono, números de pieza o códigos postales. Hasta 255 caracteres. Microsoft Access sólo almacena los caracteres insertados en un campo; no almacena espacios de caracteres correspondientes a posiciones no utilizadas en un campo Texto. Para controlar el número máximo de caracteres que se pueden insertar, establezca la propiedad .TamañoDelCampo Memo Texto y números de gran longitud como, Hasta 64.000 caracteres. por ejemplo, notas o descripciones. Numérico Datos numéricos que se han de utilizar 1, 2, 4, u 8 bytes. 16 bytes para cálculos matemáticos, para Id. de réplica (GUID) exceptuando los cálculos relacionados exclusivamente. con dinero (utilice en este caso el tipo Moneda). Establezca la propiedad .TamañoDelCampo (FieldSize) para definir el tipo Numérico específico. Fecha/Hora Fechas y horas. Moneda Valores de moneda. Utilice el tipo de 8 bytes. datos Moneda para evitar el redondeo durante los cálculos. Precisión de 15 dígitos a la izquierda del separador de decimales y de 4 dígitos a la derecha del mismo. Autonumérico Números secuenciales exclusivos (con 4 bytes. 16 bytes para Id. de incremento de una unidad) o números réplica (GUID) aleatorios que se insertan exclusivamente. automáticamente cuando se agrega un registro. 8 bytes. 27 28 CURSO DE MICROSOFT ACCESS Sí/No Campos que van a contener sólo uno de 1 bit. dos valores posibles, como Sí/No, Verdadero/Falso, Activado/Desactivado. Objeto OLE Objetos (como, por ejemplo, Hasta 1 gigabyte (limitado documentos de Microsoft Word, hojas por el espacio en disco). de cálculo de Microsoft Excel, imágenes, sonidos u otros datos binarios), creados en otros programas mediante el protocolo OLE, que se pueden vincular a, o incrustar en, una tabla de Microsoft Access. Se debe utilizar un marco de objeto dependiente en un formulario o en un informe para mostrar el objeto OLE. Hipervínculo Campo que va a almacenar Hasta 64.000 caracteres. hipervínculos. Un hipervínculo puede ser una ruta UNC o una dirección URL. Asistente para Crea un campo que permite elegir un búsquedas valor de otra tabla o de una lista de valores mediante el empleo de un cuadro combinado. La elección de este opción en la lista de tipos de datos inicia un asistente que realiza la definición automáticamente. El mismo tamaño que el campo de clave principal que también es el campo de búsqueda; normalmente 4 bytes. Propiedades de campo Cada campo dispone de un conjunto de propiedades que pueden utilizarse para personalizar la forma en que se guardan, tratan o muestran los datos. Por ejemplo, se puede controlar el número máximo de caracteres que se pueden escribir en un campo de Texto mediante el establecimiento de su propiedad TamañoDelCampo. Las propiedades de un campo se establecen mediante la visualización de una tabla en la vista Diseño, la selección del campo situado en la parte superior de la ventana y la selección de la propiedad deseada en la parte inferior de la ventana. Las propiedades disponibles para cada campo están determinadas por el tipo de datos seleccionado para el campo. Nota: Los tipos de datos Numérico, Fecha/Hora, Moneda y Sí/No proporcionan formatos de visualización predefinidos. Establezca la propiedad Formato (Format) para elegir entre los formatos disponibles para cada tipo de datos. También se puede crear un formato de visualización personalizado para todos los tipos de datos, excepto el tipo de datos Objeto OLE. Crear Tablas Microsoft Access ofrece varias alternativas para definir la estructura de una tabla. Para los efectos de este curso se presenta la creación de una tabla usando un asistente y crear una tabla desde cero o personalizada. 28 29 CURSO DE MICROSOFT ACCESS Crear tablas utilizando el Asistente de Tablas Existe una serie de asistentes que permiten la creación de tablas, diseñadas por Microsoft y previamente normalizadas. Esto dá una ventaja enorme siempre y cuando la aplicación a crear necesite alguno de los más de 25 diseños de tablas incluídas con el producto. Estos diseños están agrupados en dos categorías: Negocios y Personal. Para crear una tabla utilizando el Asistente de Tablas se trabaja en la ventana de Bases de datos y se procede como se indica a continuación: 1. Hacer clic en el botón Tablas de la Barra de Objetos. 2. Hacer doble clic sobre el acceso a Crear una tabla utilizando el asistente. 3. Aparece una ventana de diálogo donde se debe indicar: Categoría de tabla que se desea utilizar (Negocios o Personal). Hacer clic en el botón de selección correspondiente. En el cuadro Tablas de Ejemplo elegir el tipo de tabla más acorde con la tabla que se desea crear haciendo clic sobre su nombre. En el cuadro Campos de ejemplo aparecerán los campos presentes en el tipode tabla antes elegido; seleccionar los campos que se deseen incluir en la tabla y hacer clic en el botón Pasar uno ; repetir este proceso hasta que en el cuadro Campos en la nueva tabla aparezcan los deseados. 29 CURSO DE MICROSOFT ACCESS 30 El botón Pasar todos ejemplo. incluirá en la nueva tabla todos los campos presentes en la tabla El botón Devolver uno elimina de la nueva tabla el campos que se tenga seleccionado. El botón Devolver todos elimina de la nueva tabla todos los campos presentes. El botón Cambiar el nombre del campo, abre una ventana donde se puede modificar el nombre de un campo de la lista de campos de la nueva tabla. 4. Existen cuatro botones que aparecen en la parte inferior de esta ventana de diálogo y en las sucesivas: El botón Cancelar cierra el asistente sin crear la tabla. El botón Atrás regresa al paso anterior del asistente. El botón Siguiente muestra el siguiente paso del asistente. El botón Terminar crea la tabla adoptando los valores preestablecidos en cada paso del asistente. 5. Hacer clic en el botón Siguiente. 6. Aparece una ventana de diálogo donde se debe indicar: El nombre de la tabla en el cuadro ¿Qué nombre dese dar a la tabla?. Se debe decidir si la Clave Proncipal ha de ser establecida por el asistente o por el usuario; hacer clic sobre el botón de selección correspondiente. 30 31 CURSO DE MICROSOFT ACCESS 7. Hacer clic en el botón Siguiente. 8. Si seleccionó asignar la clave principal ud. mismo aparece una ventana donde debe especificar: Nombre del campo que será Clave Principal. Seleccionar el tipo de dato que almacenará dicho campo. Hacer clic en Siguiente. La última ventana mostrada por el Asistente nos permite elegir que haremos luego de creada la tabla: modificar el diseño, introducir datos directamente o introducir datos mediante un formulario creado por Access. Seleccionar la opción deseada. 31 32 10. CURSO DE MICROSOFT ACCESS Hacer clic en el botón Finalizar. Ventana para modificar el diseño de la tabla Ventana para introducir datos directamente en la tabla Ventana para introducir datos en la tabla utilizando un formulario creado por el asistente Crear una tabla sin un asistente Los siguientes pasos sirven de guía para la creación de una tabla desde el principio hasta el final. Muchos de estos pasos serán útiles para crear cualquier tipo de tabla. Los demás pasos serán útiles cuando tenga que diseñar una tabla que contenga un determinado tipo de datos o haya de definir el aspecto de un campo. Sólo tendrá que utilizar los pasos necesarios para el tipo de datos o las definiciones de campos específicos para la tabla que esté creando. Para crear una tabla desde cero en la vista Diseño: 1. Hacer clic en el botón Tablas de la Barra de Objetos. 2. Haga doble clic sobre el acceso a Crear una tabla en la vista diseño. 32 33 CURSO DE MICROSOFT ACCESS 3. Aparece la ventana de diseño: Escriba el nombre del campo en la columna Nombre de campo, una vez escrito pulsar la tecla ENTRAR. Seleccione el tipo de datos que se almacenará en el campo que se está definiendo, desplegando la lista de la columna Tipo de datos. Defina las Propiedades del campo (formato, título, valor predeterminado, etc.) en la parte inferior de la ventana de diseño. Pulsar la tecla ENTRAR. Escriba en la columna Descripción una breve descripción sobre el campo. Esto es opcional. Pulsar la tecla ENTRAR para ir a definir un nuevo campo. Seleccione el campo o los campos que desea definir como clave principal, luego haga clic en Clave principal en la barra de herramientas. Nota: No tiene que definir una clave principal, pero normalmente es conveniente hacerlo. Si no define una clave principal, Microsoft Access le preguntará si desea crear una clave principal automáticamente al guardar la tabla. Para eliminar una Clave Principal simplemente seleccione el campo que es Clave Principal y haga clic sobre el botón Clave Principal de la barra de herramientas. 4. Haga clic en Guardar en la barra de herramientas de Microsoft Access y, a continuación, escriba un nombre para la tabla que siga las reglas para nombrar objetos de Microsoft Access. 33 34 CURSO DE MICROSOFT ACCESS Notas: Se puede especificar una clave principal para un campo que ya contiene datos, pero Microsoft Access genera un mensaje al guardar la tabla si encuentra valores duplicados o Nulos en el campo. Si aparece este mensaje, tiene tres posibilidades: utilizar una Consulta de buscar duplicados para localizar registros con valores duplicados o valores Nulos y, a continuación, modificar el campo para quitarlos, seleccionar un campo diferente o bien agregar un campo Autonumérico y establecerlo como la clave principal. En una clave principal de campos múltiples, el orden de los campos puede tener importancia. Los campos de una clave principal de campos múltiples se ordenan según su orden en la vista Diseño de la tabla. Si desea un orden diferente, especifique primero los campos para la clave principal según se ha descrito en el procedimiento anterior y, a continuación, haga clic en Índices en la barra de herramientas para mostrar la ventana Índices y volver a ordenar los nombres de los campos para el índice denominado PrimaryKey. Mover un campo en la vista Diseño de la tabla 1. Hacer clic en el botón Tablas de la Barra de Objetos. 2. Seleccione la tabla a modificar. 3. Haga clic en Diseño en la Barra de herramientas de la ventana de Bases de datos. Aparece la ventana de diseño. 4. Seleccione el campo o los campos que desea mover. 5. Presione y mantenga presionado el botón del mouse en el selector de filas de nuevo. Microsoft Access muestra una barra horizontal fina justo por encima de la última fila seleccionada. 6. Arrastre la barra horizontal a la fila situada justo debajo del lugar a donde desea mover los campos. 7. Haga clic en Guardar guardar los cambios. en la barra de herramientas de la ventana de Microsoft Access para Nota: Al cambiar el orden de los campos en la vista Diseño de tabla, se modifica el orden en el que los campos se almacenan en la tabla y también se cambia el orden de las columnas en la hoja de datos de la tabla. Eliminar un campo de una tabla en la vista Diseño 1. Hacer clic en el botón Tablas de la Barra de Objetos. 2. Seleccione la tabla a modificar. 3. Haga clic en Diseño en la Barra de herramientas de la ventana de Bases de datos. Aparece la ventana de diseño. 4. Seleccione el campo o los campos que desea eliminar. 5. Haga clic en Eliminar filas 6. Haga clic en Guardar guardar los cambios. en la barra de herramientas de Microsoft Access.. en la barra de herramientas de la ventana de Microsoft Access para 34 35 CURSO DE MICROSOFT ACCESS Notas: Si otros objetos de la base de datos contienen referencias a un campo eliminado, deberá eliminar también esas referencias. Por ejemplo, si un informe contiene un control dependiente de un campo eliminado, Microsoft Access no podrá encontrar los datos del campo y generará un mensaje de error. No es posible eliminar un campo que forma parte de una relación. Debe eliminar primero la relación. Agregar un campo a una tabla en la vista Diseño 1. Hacer clic en el botón Tablas de la Barra de Objetos. 2. Seleccione la tabla a modificar. 3. Haga clic en Diseño en la Barra de herramientas de la ventana de Bases de datos. Aparece la ventana de diseño. 4. Para insertar el campo dentro de la tabla, haga clic en la fila situada por debajo del lugar en que desea agregar el campo y, a continuación, haga clic en Insertar filas herramientas. en la barra de Para agregar el campo al final de la tabla, haga clic en la primera fila en blanco. 5. Haga clic en la columna Nombre del campo y escriba el nombre del campo siguiendo las reglas para nombrar objetos de Microsoft Access. 6. En la columna Tipo de datos, conserve el valor predeterminado (Texto) o bien haga clic en la columna Tipo de datos, haga clic en la flecha y seleccione el tipo de datos que desee. 7. En la columna Descripción, escriba una descripción de la información que contendrá este campo. La descripción se muestra en la barra de estado cuando se agregan datos al campo y se incluye en la Definición del objeto de la tabla. La descripción es opcional. 8. Si lo desea, establezca las propiedades del campo en la parte inferior de la ventana. 9. Haga clic en Guardar guardar los cambios. en la barra de herramientas de la ventana de Microsoft Access para Validar los datos Al momento de diseñar una base de datos es necesario definir la manera de mantener la integridad de los datos que serán almacenados en ella. La integridad de los datos depende, entre otras cosas, de que la tabla sólo contenga datos válidos. Access 2000 ofrece algunas características para lograr eso. Requerido y Permitir longitud cero En muchos casos se encontrará que hay campos que son información fundamental para su aplicación mientras otros son opcionales. Es posible obligar al usuario a introducir datos en un campo para poder guardar el registro. Para hacer esto debemos establecer la propiedad Requerido a Sí. 35 36 CURSO DE MICROSOFT ACCESS La propiedad Permitir longitud cero. Determina el valor que se guardará en un campo de tipo Texto si no se introducen datos directamente. Hay casos donde será necesario dejar el campo como Nulo y en otras tendremos que almacenar un valor de cadena vacía. Para almacenar una cadena vacía (“”) habilite la propiedad Permitir longitud cero. La propiedad Máscara de entrada La máscara de entrada es una plantilla especial que determina la manera en que se introducirán los datos en un campo de tipo Texto o Fecha/Hora. Podemos utilizar el Asistente para máscaras de entrada o podemos escribir directamente la máscara en el campo. 36 37 CURSO DE MICROSOFT ACCESS El asistente nos permite elegir entre una serie de máscaras preestablecidas. Una de ellas crea una máscara para contraseñas. El usuario que escriba en ese campo sólo verá asteriscos. Esto evita que miradas inescrupulosas observen el contenido de alguna contraseña. El resto de las máscaras restringen la entrada de horas y fechas. Si queremos aplicar formato a un campo Fecha/Hora, luego de elegir la máscara nos aparecerá otro cuadro de diálogo solicitando información adicional. En esta ventana podemos alterar la máscara manualmente y cambiar el Caracter marcador. Este caracter es el que aparece en el campo y que será sustituido al momento de escribir valores válidos. Regla de validación y Texto de validación La Regla de validación es una expresión que limita los valores que pueden introducirse en el campo. Es posible validar, por ejemplo, un intervalo de valores. De esta manera, cualquier valor que salga fuera de ese intervalo generará un error informando que se está violando una regla de 37 38 CURSO DE MICROSOFT ACCESS validación. El siguiente ejemplo muestra una regla que no permite introducir un valor menor a 10 en el campo: >= 10 El Texto de validación permite personalizar el mensaje de error para que el usuario pueda ver, por ejemplo, cuales serían los valores válidos para ese campo. Si es necesario incluir más de una regla para un campo, será necesario agregar la letra Y entre cada regla. Siguiendo el ejemplo anterior, necesitamos que los números que se introduzcan en el campo sean mayores a 10 y menores a 20: >= 10 Y < 20 El texto de validación podría decir: “Por favor, introduzca un valor entre 10 y 20”. Es posible crear reglas más complejas utilizando funciones. Por ejemplo, podría validar que un campo fecha no pueda ser anterior a 10 días a partir de la fecha actual: • Fecha() - 10 Fecha() es una función de Access que devuelve la fecha actual. Al restarle 10 estamos estableciendo una fecha 10 días antes a la fecha actual. Las reglas de validación podrían hacerse muy complicadas. Es por ello que Access incluye un Generador de expresiones que simplifica en gran medida la creación de reglas complejas. Definir Índices Un índice determina cómo se realizará la búsqueda y ordenación de información en la tabla. Los índices aumentan la velocidad de estas operaciones. Sin embargo, hay que tener en cuenta que los índices provocan una ligera sobrecarga al momento de crear nuevos registros. Utilizar índices es bueno cuando se realizan búsquedas exahustivas para un campo, sin embargo, si el campo rara vez se utiliza como campo de búsqueda no es bueno crear un índice para dicho campo. Para crear índices seleccione Índices del menú Ver mientras se encuentra en el modo diseño de una tabla o seleccione el botón Índices de la barra de herramientas. En la lista de índices aparecen todo los índices que hemos creado para la tabla, además de la clave primaria. 38 39 CURSO DE MICROSOFT ACCESS Para crear el índice hay que escribir un nombre en la columna Nombre del índice y asignarle uno o más campos por los cuales se creará. Los índices con múltiples campos permiten crear claves primarias donde no existe un campo evidente que sea único. Por ejemplo, cuando creamos una tabla Persona, el campo Cédula de la persona sería un candidato perfecto para convertirse en clave primaria, sin embargo, si trabajamos en una tabla de Materias Cursadas donde se reflejan las materias a las que asisten los alumnos, no existe un campo que sea único por cada registro. En este caso podemos combinar dos campos, la cédula del alumno y el código de la materia, para crear un índice único. Para crear un índice con múltiples campos escriba el nombre del índice en la columna Nombre del índice y seleccione en la columna Nombre del campo el primer campo que se agregará a dicho índice. Luego, en la fila siguiente, seleccione el siguiente campo en Nombre del campo y continúe el proceso hasta finalizar de agregar todos los campos a los índices. Access admite un máximo de 10 campos por índice. Luego de crear el índice puede establecer las propiedades adicionales Principal, Única e Ignorar Nulos. Sólo puede haber una clave principal por tabla. Cuando establecemos la propiedad Principal de un índice a Sí, Access establecerá a No el valor de esta propiedad en el resto de los índices. Un índice puede tener valores duplicados, sin embargo, si necesitamos evitar valores duplicados en campos específicos de una tabla debemos crear un índice para ese campo y establecer la propiedad Única a Sí. La propiedad Ignorar Nulos permite crear índices en los campos donde los valores nulos son permitidos. Si algún campo no es requerido, pero se quiere indexar dicho campo, será necesario establecer esta propiedad a Sí, de esta manera evita que Access genere un error cuando se cree un registro nuevo y el valor de dicho campo no se haya llenado. Relacionar Tablas Una vez creadas tablas diferentes para cada tema de la base de datos de Microsoft Access, necesita una forma de indicarle a Microsoft Access cómo debe volver a combinar esa información. El primer paso de este proceso es definir relaciones entre las tablas. Una vez realizada esta operación, puede crear consultas, formularios e informes para mostrar información de varias tablas a la vez. Por ejemplo, este formulario incluye información de cinco tablas: 39 40 CURSO DE MICROSOFT ACCESS En el ejemplo anterior, los campos de las cinco tablas deben coordinarse de modo que muestren información acerca del mismo pedido. Esta coordinación se lleva a cabo mediante las relaciones entre las tablas. Una relación hace coincidir los datos de los campos clave (normalmente un campo con el mismo nombre en ambas tablas). En la mayoría de los casos, estos campos coincidentes son la clave principal de una tabla, que proporciona un identificador único para cada registro, y una clave externa de la otra tabla. Por ejemplo, los empleados pueden asociarse a los pedidos de los que son responsables mediante la creación de una relación entre la tabla Empleados y la tabla Pedidos a través de los campos Id. de empleado. Relación uno a varios La relación uno a varios es el tipo de relación más común. En este tipo de relación, un registro de la Tabla A puede tener muchos registros coincidentes en la Tabla B, pero un registro de la Tabla B sólo tiene un registro coincidente en la Tabla A. 40 41 CURSO DE MICROSOFT ACCESS Relación uno a uno En una relación uno a uno, cada registro de la Tabla A sólo puede tener un registro coincidente en la Tabla B y viceversa. Este tipo de relación no es habitual, debido a que la mayoría de la información relacionada de esta forma estaría en una sola tabla. Puede utilizar la relación uno a uno para dividir una tabla con muchos campos, para aislar parte de una tabla por razones de seguridad o para almacenar información que sólo se aplica a un subconjunto de la tabla principal. Por ejemplo, puede crear una tabla que registre los empleados participantes en un partido de fútbol benéfico. Relación varios a varios En una relación varios a varios, un registro de la Tabla A puede tener muchos registros coincidentes en la Tabla B y viceversa. Este tipo de relación sólo es posible si se define una tercera tabla (denominada tabla de unión) cuya clave principal consta de al menos dos campos: las claves 41 42 CURSO DE MICROSOFT ACCESS externas de las Tablas A y B. Por ejemplo, las tablas Pedidos y Productos tienen una relación varios a varios definida mediante la creación de dos relaciones uno a varios con la tabla Detalles de pedidos. Definir relaciones entre tablas El tipo de relación que crea Microsoft Access depende de cómo están definidos los campos relacionados: Se crea una relación uno a varios si uno de los campos relacionados es una clave principal o tiene un índice único. Se crea una relación uno a uno si ambos campos relacionados son claves principales o tienen índices únicos. Una relación varios a varios es, en realidad, dos relaciones uno a varios con una tercera tabla cuya clave principal consta de dos campos: las claves externas de las otras dos tablas. Para definir una relación, es necesario agregar a la ventana Relaciones las tablas que se desea relacionar y, a continuación, arrastrar el campo clave de una tabla y colocarlo en el campo clave de la otra tabla, como se indica a continuación: 1. Cierre todas las tablas que estén abiertas. No es posible crear ni modificar relaciones entre tablas abiertas. 2. Si se encuentra en otra ventana, cámbiese a la ventana Base de datos. Puede presionar F11 para cambiar a la ventana Base de datos desde cualquier otra ventana. 3. Haga clic en Relaciones en la barra de herramientas. 4. Si la base de datos no tiene ninguna relación definida, se mostrará automáticamente el cuadro de diálogo Mostrar tabla. Si necesita agregar las tablas que desea relacionar y no aparece el cuadro de diálogo Mostrar tabla, haga clic en Mostrar tabla en la barra de herramientas. Si las tablas que desea relacionar ya están mostradas, continúe en el paso 6. 42 43 CURSO DE MICROSOFT ACCESS 5. Haga doble clic en los nombres de las tablas que desea relacionar y, a continuación, cierre el cuadro de diálogo Mostrar tabla. 6. Arrastre el campo que desea relacionar de una tabla al campo relacionado de la otra tabla. Para arrastrar varios campos, presione la tecla CTRL y haga clic en cada campo antes de arrastrarlo. En la mayoría de los casos, se arrastra el campo de clave principal (mostrado en texto en negrita) de una tabla a un campo similar (normalmente con el mismo nombre) denominado la clave externa de la otra tabla. Los campos relacionados no tienen que tener los mismos nombres, pero deben tener el mismo tipo de datos (con dos excepciones) y deben contener el mismo tipo de información. Además, cuando los campos coincidentes son campos Numéricos, deben tener el mismo valor de la propiedad Tamaño del campo. Las dos excepciones a los tipos de datos coincidentes son que se puede hacer coincidir un campo Autonumérico con un campo Numérico cuya propiedad Tamaño del campo esté establecida a Entero largo y que se puede hacer coincidir un campo Autonumérico con un campo Numérico si ambos campos tienen la propiedad Tamaño del campo establecida a Id. de réplica. 7. Aparecerá el cuadro de diálogo Modificar relaciones. Compruebe los nombres de los campos mostrados en las dos columnas para asegurarse de que son correctos. Puede cambiarlos si es necesario. 43 44 CURSO DE MICROSOFT ACCESS Si es preciso, establezca las opciones de relación. Para obtener información acerca de un elemento específico del cuadro de diálogo Relaciones, haga clic en el botón de signo de interrogación y, a continuación, haga clic en el elemento. 8. Haga clic en el botón Crear para crear la relación. 9. Repita los pasos 5 a 8 para cada pareja de tablas que desee relacionar. Al cerrar la ventana Relaciones, Microsoft Access pregunta si desea guardar el diseño. Independientemente de si lo guarda o no, las relaciones creadas se guardan en la base de datos. Notas: Si necesita ver todas las relaciones definidas en la base de datos, haga clic en Mostrar todas las relaciones en la barra de herramientas. Para ver sólo las relaciones definidas para una tabla determinada, haga clic en la tabla y, a continuación, haga clic en Mostrar relaciones directas barra de herramientas. en la Si necesita realizar un cambio en el diseño de una tabla, puede hacer clic con el botón secundario del mouse en la tabla que desea modificar y, a continuación, hacer clic en Diseño de la tabla. Puede crear relaciones utilizando tanto consultas como tablas. Sin embargo, la integridad referencial no se exige en las consultas. 44 45 CURSO DE MICROSOFT ACCESS Para crear una relación entre una tabla y sí misma, agregue esta tabla dos veces. Esto resulta útil en situaciones en las que necesita realizar una búsqueda dentro de la misma tabla. Por ejemplo, en la tabla Empleados de la base de datos de ejemplo Neptuno, se ha definido una relación entre los campos Id. de empleado y Jefe, de modo que el campo Jefe pueda mostrar datos de los empleados procedentes de un Id. de empleado coincidente. Ver relaciones existentes 1. Si se encuentra en otra ventana, cámbiese a la ventana Base de datos. Puede presionar F11 para cambiar a la ventana Base de datos desde cualquier otra ventana. 2. Haga clic en Relaciones en la barra de herramientas. 3. Para ver todas las relaciones definidas en la base de datos, haga clic en Mostrar todas las relaciones en la barra de herramientas. Para ver sólo las relaciones definidas para una tabla determinada, haga clic en la tabla y, a continuación, haga clic en Mostrar relaciones directas en la barra de herramientas. Nota: Si todas las tablas relacionadas con la tabla seleccionada ya están mostradas en la ventana Relaciones, al hacer clic en el botón Mostrar relaciones directas no se llevará a cabo ninguna acción, porque sólo se agregan las tablas relacionadas con la tabla actual. Si desea ver sólo las relaciones directas de una tabla, haga clic en Borrar diseño en la barra de herramientas para quitar todas las tablas de la ventana Relaciones (de esta forma no se eliminarán las tablas ni las relaciones, sólo desaparecerán de la ventana Relaciones), vuelva a agregar la tabla y, a continuación, haga clic en el botón Mostrar relaciones directas. Para agregar una tabla, haga clic en Mostrar tabla de herramientas, haga doble clic en la tabla y, a continuación, elija Cerrar. en la barra Modificar una relación existente 1. Cierre todas las tablas abiertas. No es posible modificar relaciones entre tablas abiertas. 2. Si se encuentra en otra ventana, cámbiese a la ventana Base de datos. Puede presionar F11 para cambiar a la ventana Base de datos desde cualquier otra ventana. 3. Haga clic en Relaciones en la barra de herramientas. 4. Si las tablas cuya relación desea modificar no están mostradas en pantalla, haga clic en Mostrar tabla agregar. en la barra de herramientas y haga doble clic en cada tabla que desee 5. Haga doble clic en la línea de relación correspondiente a la relación que desea modificar. 6. Establezca las opciones de las relaciones. Para obtener información acerca de un elemento específico del cuadro de diálogo Relaciones, haga clic en el botón de signo de interrogación y a continuación, haga clic en el elemento. Eliminar una relación 1. Cierre todas las tablas abiertas. No es posible eliminar relaciones entre tablas abiertas. 2. Si se encuentra en otra ventana, cámbiese a la ventana Base de datos. Puede presionar F11 para cambiar a la ventana Base de datos desde cualquier otra ventana. 45 46 CURSO DE MICROSOFT ACCESS 3. Haga clic en Relaciones en la barra de herramientas. 4. Si las tablas cuya relación desea eliminar no están mostradas en pantalla, haga clic en Mostrar tabla en la barra de herramientas y haga doble clic en cada tabla que desee agregar. A continuación, elija Cerrar. 5. Haga clic en la línea de relación correspondiente a la relación que desea eliminar (la línea se mostrará en negrita al seleccionarla) y, a continuación, presione la tecla SUPRIMIR. Imprimir la ventana Relaciones En una base de datos de Microsoft Access, puede utilizar el asistente para imprimir relaciones con el fin de crear un informe que muestre las relaciones según aparecen en la ventana Relaciones. 1. Abra la base de datos de Access cuyas relaciones desea imprimir. 2. En el menú Herramientas, haga clic en Relaciones para abrir la ventana Relaciones. 3. En el menú Archivo, haga clic en Imprimir relaciones. Nota: No se pueden imprimir las relaciones en un proyecto de Microsoft Access. Sugerencia: El asistente para imprimir relaciones genera un informe con el encabezado Relaciones existentes en nombrebasededatos y la fecha de creación del informe. Puede guardar este informe para poder consultarlo en el futuro. Manipulación de Datos Una vez definida la estructura de las tablas de una base de datos se procede a la manipulación de los datos que consiste en el añadir datos o registros, editar los datos, guardar los datos, eliminar los datos y modificarlos. Agregar datos nuevos en la vista Hoja de datos o Formulario 1. Abra un formulario en la vista Hoja de datos o en la vista Formulario. 2. Haga clic en Nuevo registro en la barra de herramientas. 3. Escriba los datos deseados y presione TAB para situarse en el siguiente campo. 4. Al final del registro, presione TAB para situarse en el siguiente registro. Métodos para trabajar con datos en un formulario En la vista Formulario, se dispone de todas las herramientas necesarias para trabajar con los datos. 46 47 CURSO DE MICROSOFT ACCESS Métodos para trabajar con datos en la hoja de datos de una tabla En la vista Hoja de datos de tabla, hay muchas maneras de trabajar con datos. Métodos para trabajar con datos en la hoja de datos de una consulta Hay muchos métodos para trabajar con datos en la hoja de datos de una consulta. Agregar datos nuevos en la vista Hoja de datos o Formulario 47 48 CURSO DE MICROSOFT ACCESS 1. Abra un formulario en la vista Hoja de datos o en la vista Formulario. 2. Haga clic en Nuevo registro en la barra de herramientas. 3. Escriba los datos deseados y presione TAB para situarse en el siguiente campo. 4. Al final del registro, presione TAB para situarse en el siguiente registro. Guardar registros en la vista Formulario u Hoja de datos Microsoft Access guarda automáticamente el registro que se está agregando o editando, en cuanto mueva el punto de inserción a un registro diferente o cierre la hoja de datos en la que está trabajando. Para guardar explícitamente un registro mientras lo está editando, haga clic en Guardar registro en el menú Registros. Eliminar un registro en la vista Hoja de datos o Formulario 1. Abra una Hoja de datos, o un formulario en la Vista formulario. 2. Haga clic en el registro que desee eliminar. 3. Haga clic en Eliminar Registro en la barra de herramientas. Nota: Al eliminar registros, quizás desee eliminar los datos relacionados en otras tablas. Por ejemplo, si elimina un proveedor de una tabla, probablemente desee eliminar los productos suministrados por ese proveedor. En algunos casos, puede asegurarse que se eliminan los datos correctos, forzando la integridad referencial y activando las eliminaciones en cascada. Modificar los datos de un campo en las vistas Hoja de datos o Formulario 1. Abra una Hoja de datos, o un formulario en la vista Formulario. 2. Para editar los datos de un campo, haga clic en el campo que desea editar.Para reemplazar el valor completo, mueva el puntero al extremo izquierdo del campo hasta que se convierta en puntero más y entonces haga clic. 3. Escriba el texto que desea insertar. Notas: Si comete un error al escribir, presione la tecla de RETROCESO. Si desea cancelar los cambios en el campo actual, presione la tecla ESC. Si desea cancelar los cambios en todo el registro, presione ESC de nuevo antes de salir del campo. Cuando se mueva a otro registro, Microsoft Access guardará los cambios. Buscar o reemplazar datos Microsoft Access ofrece muchas formas de buscar o reemplazar exactamente los datos que se necesiten, a la hora de buscar un valor determinado, un registro o un grupo de registros. 48 49 CURSO DE MICROSOFT ACCESS Se puede buscar un registro desplazándose por una hoja de datos o un formulario, o escribiendo su número de registro en el cuadro de número de registro. Mediante el cuadro de diálogo Buscar se pueden localizar determinados registros o buscar ciertos valores en campos. Es posible desplazarse por los registros cuando Access encuentra cada aparición del elemento que se está buscando. Si desea reemplazar ciertos valores una vez encontrados, utilice en su lugar el cuadro de diálogo Reemplazar. Mediante un filtro, se puede aislar y ver temporalmente un grupo de registros específico con el que trabajar mientras se muestra en pantalla un formulario o una hoja de datos. Mediante una consulta, se puede trabajar con un grupo de registros concreto que cumpla los criterios especificados a partir de una o más tablas de la base de datos. Ejecutando la consulta, se puede trabajar en este subconjunto con independencia de una hoja de datos o un formulario específicos. Desplazarse entre registros utilizando botones de desplazamiento en la vista Página Utilice los botones de desplazamiento situados en la barra de herramientas de exploración de registros para desplazarse con rapidez entre registros o entre un grupo de registros de una página de acceso a datos agrupada. Filtrar Información Un filtro es una condición o condiciones que se aplican sobre los registros de una hoja de datos o formulario abierto para mostrar temporalmente el subconjunto de registros que cumplen las condiciones o criterios. Aplicar un filtro en una tabla, una consulta o un formulario En un formulario, una hoja de datos o cualquier ventana de filtro, haga clic en Aplicar filtro en la barra de herramientas. Notas: Cuando se aplica un filtro a una hoja de datos, Microsoft Access también aplica los filtros creados en cualquier hoja secundaria de datos que contenga. Microsoft Access puede aplicar un filtro automáticamente al abrir un formulario si se establece la propiedad Al abrir (OnOpen) del formulario a una macro que utilice la acción AplicarFiltro o a un procedimiento de eventos que utilice el método ApplyFilter del objeto DoCmd. Si crea un filtro en un formulario, un subformulario, una hoja de datos principal o una secundaria que ya contenía un filtro de una sesión de trabajo anterior, el nuevo filtro reemplaza al anterior. Quitar un filtro de una tabla, una consulta o un formulario 49 50 CURSO DE MICROSOFT ACCESS Para quitar un filtro y ver los registros que se mostraban anteriormente en la tabla, la consulta o el formulario, haga clic en Quitar filtro Hoja de datos o en la vista Formulario. en la barra de herramientas en la vista Para quitar un filtro de una base de datos multiusuario (compartida) y ver qué registros se han agregado, eliminado o modificado desde que se abrió la tabla, la consulta o el formulario, en el menú Registros elija Quitar filtro u ordenar en la vista Hoja de datos o Formulario. Notas: Si se quita un filtro no se elimina permanentemente. Puede volver a aplicarlo haciendo clic en Aplicar filtro en la barra de herramientas. Al quitar un filtro de una hoja de datos, Microsoft Access también quita cualquier filtro aplicado a cada hoja secundaria de datos que contenga. Si lo prefiere, puede utilizar la acción MostrarTodosRegistros en una macro o en código de Visual Basic para aplicaciones para quitar el filtro. Ordenar los registros de una tabla, consulta o formulario Cuando especifica un orden en la vista Formulario o en la vista Hoja de datos, puede llevar a cabo ordenaciones simples, lo que significa que puede ordenar todos los registros en orden ascendente o descendente (no en ambos). Cuando especifica un orden en la vista Diseño de la consulta o en la ventana Filtro u orden avanzado, puede llevar a cabo ordenaciones complejas. Esto significa que puede ordenar registros en orden ascendente según algunos campos y en orden descendente según otros. Con independencia de cómo especifique el orden, Microsoft Access lo almacena cuando guarda el formulario o la hoja de datos, y vuelve a aplicarlo de forma automática cuando se abre de nuevo el objeto o se basa un nuevo formulario o informe en ese objeto. Puede ordenar registros en la vista Formulario o en la vista Hoja de datos de una tabla, consulta o formulario, aunque ya se haya aplicado un filtro. Puede también ordenar los datos filtrados especificando un orden en la ventana Filtro u orden avanzado, u ordenar los resultados de una consulta especificando un orden en la vista Diseño de la consulta. Consideraciones para ordenar registros El orden se guarda con la tabla, consulta o formulario. Si basa un nuevo formulario o informe en una tabla o consulta que tiene un orden guardado con ella, el nuevo formulario o informe hereda el orden. Microsoft Access ordena hasta 255 caracteres, en uno o más campos, en el resultado de una consulta o filtro avanzado. El orden depende de la configuración de idioma especificada en el cuadro de diálogo Opciones en el momento de crear la base de datos. Para comprobar o cambiar esta configuración, en el menú Herramientas haga clic en Opciones y, a continuación, haga clic en la ficha General para ver la configuración establecida bajo Nuevo orden de la base de datos. Si su base de datos contiene tablas vinculadas de una base de datos que utiliza un orden en un idioma diferente, Microsoft Access usará el orden de la base de datos que contenga el vínculo a la tabla, no el de la base de datos en donde está almacenada la tabla. Si la cuadrícula de diseño de la consulta o el filtro contiene el asterisco de la lista de campos, no podrá especificar un orden en la cuadrícula de diseño a no ser que agregue también a la cuadrícula de diseño los campos por los que desea ordenar. 50 51 CURSO DE MICROSOFT ACCESS Para ordenar las fechas y horas de más temprano a más tarde, use el orden ascendente. Utilice el orden descendente para ordenar de más tarde a más temprano. Los números almacenados en los campos de Texto se ordenan como cadenas de caracteres, no como valores numéricos. Por tanto, para ordenarlos en orden numérico, todas las cadenas de texto deben tener la misma longitud, con los números más cortos rellenos con ceros a la izquierda. Por ejemplo, el resultado de una ordenación ascendente de las cadenas de texto “1”, “2”, “11” y “22” será “1”, “11”, “2”, “22”. Debe rellenar los números de un único dígito con un cero a la izquierda para que las cadenas se ordenen correctamente: “01”, “02”, “11”, “22”. En el caso de los campos que no contienen valores Null, otra solución sería ordenar por el valor numérico de la cadena mediante la función Val (Val). Por ejemplo, si la columna Edad es un campo de Texto que contiene valores numéricos, al especificar Val([Edad]) en una celda Campo y al establecer un orden en su celda Orden, se ordenarán los registros en el orden correcto. Si sólo está almacenando números o fechas en un campo de Texto, considere la posibilidad de cambiar el tipo de datos del campo a Numérico, Moneda o Fecha/Hora en la tabla que contiene el campo. A continuación, cuando ordene el campo, los números o las fechas se ordenarán en el orden numérico o de fecha sin necesidad de utilizar ceros a la izquierda. Al ordenar un campo en orden ascendente, todos los registros en los que ese campo esté en blanco (contenga un valor Null) se incluyen al principio. Si un campo contiene registros con valores Null y con cadenas de longitud cero, los campos con los valores nulos aparecen primero en el orden, seguidos inmediatamente por las cadenas de longitud cero. No es posible ordenar un campo cuyo tipo de datos es Memo, Hipervínculo u Objeto OLE. Ordenar registros en la vista Formulario u Hoja de datos 1. En la vista Formulario o la vista Hoja de datos, haga clic en el campo que desee utilizar para ordenar registros. Para ordenar los registros de un subformulario, haga clic en el campo que desee ordenar. Para filtrar los registros de una hoja secundaria de datos, hágala aparecer haciendo clic en el indicador de expansión. 2. Para ordenar en orden ascendente, haga clic en Orden ascendente 3. Para ordenar en orden descendente, haga clic en Orden descendente . . Notas: En la vista Hoja de datos, cuando ordena la hoja secundaria de datos de un registro, Microsoft Access ordena todas las hojas de datos secundarias que se encuentren en dicho nivel. En un formulario sólo se puede ordenar según un campo a la vez, en una hoja de datos principal o secundaria, puede seleccionar dos o más columnas adyacentes al mismo tiempo y ordenarlas. Microsoft Access ordena los registros empezando por la columna seleccionada situada más a la izquierda. Al guardar el formulario o la hoja de datos, Microsoft Access guarda el orden. Ordenar registros mediante la cuadrícula de diseño de una consulta o un filtro avanzado Antes de especificar un orden, hay ciertas cosas que debe tener en cuenta. 1. Abra una consulta en la vista Diseño o muestre la ventana Filtro u orden avanzado de una tabla, consulta o formulario. 51 52 CURSO DE MICROSOFT ACCESS 2. Para ordenar por más de un campo, coloque los campos en la cuadrícula de diseño en el orden en el que desee que se lleve a cabo la ordenación. Microsoft Access ordena primero por el campo situado más a la izquierda, luego por el siguiente campo a la derecha, y así sucesivamente. Por ejemplo, para ordenar primero por el campo Apellidos y a continuación por el campo Nombre, el campo Apellidos debe estar a la izquierda del campo Nombre en la cuadrícula. 3. En la celda Orden de cada uno de los campos por los que desea ordenar, haga clic en una opción. 4. Para ver el resultado de la consulta, haga clic en Ver en la barra de herramientas. Las Consultas Las consultas son objetos que permiten formular preguntas a Access sobre el contenido de una o de varias tablas. También es posible realizar consultas sobre otras consultas realizadas con anterioridad. Se utilizan consultas para ver, modificar y analizar datos de formas diferentes. También pueden utilizarse como el origen de registros para formularios, informes y páginas de acceso a datos. Al resultado de una consulta se le denomina Hoja de Datos y presenta aspecto de tabla; sin embargo, las consultas no crean nuevas tablas, sino que muestran parte de la tabla o las tablas sobre las que se realiza la consulta. Abrir o ejecutar una consulta Puede abrir una consulta de selección, de tabla de referencias cruzadas o de acción en la vista Diseño. También puede abrir una consulta de selección o de tabla de referencias cruzadas en la vista Hoja de datos con el fin de ver el resultado de la consulta. No es posible abrir una consulta de acción en la vista Hoja de datos para ver sus resultados. No obstante, en la vista Hoja de datos puede ver una vista previa de los datos que se verán afectados por la ejecución de la consulta de acción. Abrir una consulta en la vista Diseño 1. En la ventana Base de datos, haga clic en Consultas, bajo Objetos. 52 53 CURSO DE MICROSOFT ACCESS 2. Seleccione la consulta que desea abrir y, a continuación, elija Diseño en la barra de herramientas de la ventana Base de datos. Notas: Si una página de acceso a datos, formulario o informe está basado en una consulta, puede abrir la consulta directamente desde la página de acceso a datos, formulario o informe para modificar su diseño. Si anteriormente ha guardado una consulta mientras estaba mostrada en la vista SQL, ésa será la vista que muestre Microsoft Access la próxima vez que haga clic en Diseño en la barra de herramientas de la ventana Base de datos de esa consulta. Ver los resultados de una consulta de selección o de tabla de referencias cruzadas Microsoft Access muestra los resultados de una consulta de selección o de tabla de referencias cruzadas en una hoja de datos. Puede mostrar la hoja de datos desde la vista Diseño de la consulta o haciendo clic en Abrir en la barra de herramientas de la ventana Base de datos. Desde Realice esta acción Vista Diseño de la consulta Ventana Base de datos Haga clic en Ver en la barra de herramientas. Haga clic en Consultas , bajo Objetos, y, a continuación, haga doble clic en el nombre de la consulta, o bien seleccione la consulta y haga clic en Abrir en la barra de herramientas de la ventana Base de datos. Cambiar entre las vistas de una consulta Una consulta tiene tres vistas: la vista Diseño, la vista Hoja de datos y la vista SQL. 1. Haga clic en clic en la flecha situada junto a Ver barra de herramientas. en la 2. En la lista desplegable, haga clic en la vista que desee. 53 54 CURSO DE MICROSOFT ACCESS Quitar una tabla o consulta de una consulta 1. Abra una consulta en la vista Diseño. 2. En la parte superior de la vista Diseño de la consulta, seleccione la tabla o consulta que desee borrar haciendo clic en cualquier parte de su lista de campos, y a continuación presione la tecla SUPR. Los campos que haya arrastrado desde la lista de campos a la cuadrícula de diseño también son borrados de la consulta. Sin embargo, la tabla o consulta no es borrada de la base de datos. Tipos de Consulta Consulta de selección Una consulta de selección es el tipo de consulta más habitual. Este tipo de consulta obtiene los datos de una o más tablas y muestra los resultados en una hoja de datos en la que puede actualizar los registros (con algunas restricciones). También puede utilizar una consulta de selección para agrupar los registros y calcular sumas, cuentas, promedios y otros tipos de totales. Consulta de parámetros Una consulta de parámetros es una consulta que, cuando se ejecuta, muestra su propio cuadro de diálogo que solicita información, como por ejemplo criterios para recuperar registros o un valor que desea insertar en un campo. Puede diseñar la consulta para que solicite más de un dato; por ejemplo, puede diseñarla para que solicite dos fechas. Microsoft Access puede entonces recuperar todos los registros que quedan entre esas dos fechas. Las consultas de parámetros también son útiles cuando se emplean como base para los formularios, informes y páginas de acceso a datos. Por ejemplo, puede crear un informe de ingresos mensuales basado en una consulta de parámetros. Al imprimir el informe, Microsoft Access muestra un cuadro de diálogo que solicita el mes sobre el que se desea el informe. Cuando se introduce un mes, Microsoft Access imprime el informe apropiado. También puede crear un formulario o un cuadro de diálogo personalizado que solicite los parámetros de una consulta, en lugar de utilizar el cuadro de diálogo de la consulta de parámetros. Consulta de tabla de referencias cruzadas Una consulta de tabla de referencias cruzadas muestra valores resumidos (sumas, cuentas y promedios) de un campo de una tabla y los agrupa según un conjunto de hechos enumerados en el lado izquierdo de la hoja de datos y otro conjunto de hechos enumerados en la parte superior de la hoja de datos. Sugerencia: Puede mostrar datos de una tabla de referencias cruzadas sin crear una consulta independiente en la base de datos mediante el Asistente para tablas dinámicas en un formulario o creando una lista de tabla dinámica en una página de acceso a datos. Con un formulario o una lista de tabla dinámica, puede cambiar los encabezados de fila y columna según desee para analizar los datos de distintos modos. Consulta de acción Una consulta de acción es una consulta que realiza cambios a muchos registros en una sola operación. Existen cuatro tipos de consultas de acción: de eliminación, de actualización, de datos anexados y de creación de tabla. 54 55 CURSO DE MICROSOFT ACCESS Consulta de eliminación Elimina un grupo de registros de una o más tablas. Por ejemplo, puede utilizar una consulta de eliminación para quitar productos que ya no se fabrican o de los que no hay pedidos. Con las consultas de eliminación, siempre se eliminan registros enteros, no sólo campos seleccionados dentro de los registros. Consulta de actualización Realiza cambios globales a un grupo de registros de una o más tablas. Por ejemplo, puede aumentar los precios un 10 por ciento para todos los productos lácteos o bien puede aumentar los sueldos un 5 por ciento al personal de una determinada categoría. Con una consulta de actualización, puede cambiar los datos de las tablas existentes. Consulta de datos anexados Agrega un grupo de registros de una o más tablas al final de una o más tablas. Por ejemplo, supongamos que consigue nuevos clientes y una base de datos que contiene una tabla con información acerca de estos clientes. Para evitar tener que escribir toda esta información, desea anexarla a la tabla Clientes. Las consultas de datos anexados también son útiles para: 1. Anexar campos basados en criterios. Por ejemplo, es posible que desee anexar sólo los nombres y las direcciones de los clientes con pedidos de un tamaño considerable. 2. Anexar registros cuando algunos de los campos de una tabla no existe en la otra tabla. Por ejemplo, en la base de datos de ejemplo Neptuno, la tabla Clientes tiene 11 campos. Supongamos que desea anexar registros de otra tabla que tienen campos que coinciden con 9 de los 11 campos de la tabla Clientes. Una consulta de datos anexados anexará los datos de los campos coincidentes e ignorará el resto. Consulta de creación de tabla Crea una tabla nueva a partir de todos o de parte de los datos de una o más tablas. Las consultas de creación de tabla son útiles para: 1. Crear una tabla para exportar a otras bases de datos de Microsoft Access. Por ejemplo, es posible que desee crear una tabla que contenga varios campos de la tabla Empleados y, a continuación, exportar esa tabla a una base de datos utilizada por el departamento de personal. 2. Crear páginas de acceso a datos que muestren datos de un determinado momento en el tiempo. Por ejemplo, supongamos que el 15-May-96 desea mostrar una página de acceso a datos que muestre los totales de ventas del primer trimestre según los datos contenidos en las tablas base a las 9:00 A.M. del día 1-Abr-96. Una página de acceso a datos basada en una consulta o una instrucción SQL extrae los datos más actualizados de las tablas (los datos correspondientes al 15-May-96), en lugar de los registros de una fecha y hora específicas. Para conservar los datos tal como estaban exactamente a las 9:00 A.M. del 1-Abr-96, cree una consulta de creación de tabla en ese momento del tiempo para recuperar los registros necesarios y almacenarlos en una tabla nueva. A continuación, utilice esta tabla, en lugar de una consulta, como base de las páginas de acceso a datos. 3. Realizar una copia de seguridad de una tabla. 4. Crear una tabla histórica que contenga registros antiguos. Por ejemplo, puede crear una tabla que almacene todos los pedidos antiguos antes de eliminarlos de la tabla Pedidos actual. 5. Mejorar el rendimiento de las páginas de acceso a datos, formularios e informes basados en consultas de tablas múltiples o en instrucciones SQL. Por ejemplo, supongamos que desea imprimir varios informes basados en una consulta de cinco tablas que incluya totales. Puede 55 56 CURSO DE MICROSOFT ACCESS acelerar el proceso creando primero una consulta de creación de tabla que recupere los registros que necesite y los almacene en una tabla. A continuación puede basar los informes en esta tabla o especificar la tabla en una instrucción SQL como el origen de los registros para un formulario, informe o página de acceso a datos, de modo que no tenga que volver a ejecutar la consulta para cada informe. No obstante, los datos de la tabla quedan congelados en el momento en que se ejecuta la consulta de creación de tabla. Consulta SQL Una consulta SQL es una consulta creada mediante una instrucción SQL. La consulta de unión, la consulta de paso a través, la consulta de definición de datos y la subconsulta son ejemplos de consultas específicas de SQL. Consulta de unión Este tipo de consulta combina campos (columnas) de una o más tablas o consultas en un campo o columna del resultado de la consulta. Por ejemplo, si tiene seis distribuidores que envían nuevas listas de inventario cada mes, puede combinar estas listas en un conjunto de resultados mediante una consulta de unión y, a continuación, crear una consulta de creación de tabla basada en la consulta de unión para crear una tabla nueva. Consulta de paso a través Este tipo de consulta envía comandos directamente a las bases de datos ODBC, como las de Microsoft FoxPro, utilizando comandos aceptados por el servidor. Por ejemplo, puede emplear una consulta de paso a través para recuperar registros o modificar datos. Consulta de definición de datos Este tipo de consulta crea, elimina o modifica tablas, o crea índices en una base de datos, como tablas de Microsoft Access o Microsoft FoxPro. Subconsulta Este tipo de consulta consta de una instrucción SQL SELECT dentro de otra consulta de selección o consulta de acción. Puede introducir estas instrucciones en la fila Campo de la cuadrícula de diseño de la consulta para definir un campo nuevo o bien en la fila Criterios para definir criterios para un campo. Puede utilizar las subconsultas para: Comprobar la existencia de algún resultado de la subconsulta (mediante las palabras clave EXISTS o NOT EXISTS). Encontrar los valores de la consulta principal que sean iguales, mayores que o menores que los valores devueltos por la subconsulta (mediante las palabras reservadas ANY, IN o ALL). Crear subconsultas dentro de las subconsultas (subconsultas anidadas). Crear una consulta de selección sin un asistente Para crear una consulta se deben seguir los siguientes pasos: 1. Abrir la base de datos sobre la cual se desea realizar la consulta. 2. En la ventana de la base de datos, hacer clic en el objeto Consulta de la Barra de Objetos. 56 57 CURSO DE MICROSOFT ACCESS 3. En el área de lista hacer doble clic sobre la opción de Crear una consulta en vista Diseño. 4. Aparece el cuadro de diálogo Mostrar tabla. En la parte superior presenta las pestañas Tablas, Consultas y Ambas. En el área interna de la ventana, selecionar la tabla o consulta que desee utilizar y haga clic en el botón Agregar o doble clic sobre el objeto seleccionado. 5. Haga clic en el botón Cerrar. En este momento aprece la ventana Consulta1: Consulta de Selección. En la zona superior de dicha ventana aparecen las tablas o consultas agregadas, en la zona inferior aparecerá la cuadrícula QBE (Query By Example, Consulta según ejemplo). 57 58 CURSO DE MICROSOFT ACCESS En la cuadrícula QBE se especifican los campos de la tabla que intervienen en la consulta. Se deben especificar tanto los campos que se desea que aparezcan como resultado de la consulta como los campos sobre los que se establecen las condiciones en la consulta. La cuadrícula está dividida en filas y columnas. Cada Columna corresponde con un campo. Cada fila específica una característica del campo: La fila Campo específica los campos que intervienen en la consulta. La fila Tabla muestra el nombre de la tabla de donde proceden los campos. La fila Orden establece el orden en el que aparecerán los registros resultantes de la consulta al mostrar la hoja de datos. La fila Mostrar indica que campos de los que se encuentran en la cuadrícula QBE aparecerán en la hoja de datos. La fila Criterios permite estableceer la condición o condiciones que debe cumplir un campo para que el registro correspondiente apareca en la hoja de datos. Asistentes para el diseño de consultas Al crear una consulta a través del botón Nuevo de la barra de herramientas de la ventana de Base de datos, aparece el cuadro de diálogo Nueva Consulta: Este cuadro de diálogo presenta varias opciones: 58 59 CURSO DE MICROSOFT ACCESS 1. Vista Diseño que permite crear consultas de cualquier tipo sin utilizar los asistentes. 2. Asistente para consultas de referencias cruzadas que permite crear consultas de referencias cruzadas mediante la ayuda de un asistente. 3. Asistente para consultas sencillas que permite crear consultas de selección mediante un asistente. 4. Asistente para búsquedas de duplicados que permite crear consultas que muestren información de aquellos registros que presentan valores repetidos en un campo. 5. Asistente para búsquedas de no coincidentes permite crear consultas que muestren registros de una tabla (tabla principal) que no tienen registros relacionados en otra tabla (tabla relacionada). Crear una consulta de selección sencilla mediante un asistente El Asistente para consultas sencillas crea consultas que recuperan datos de los campos especificados en una o más tablas o consultas. Si lo desea, el asistente también puede sumar, contar y obtener el promedio de los valores de grupos de registros o de todos los registros y puede calcular el valor mínimo o máximo de un campo. No obstante, no es posible limitar los registros recuperados mediante el establecimiento de criterios. 1. En la ventana Base de datos, haga clic en Consultas y, a continuación, bajo Objetos, haga clic en Nueva en la barra de herramientas de la ventana Base de datos. 2. En el cuadro de diálogo Nueva consulta, haga clic en Asistente para consultas sencillas. 3. Elija Aceptar. 4. Haga clic en el nombre de la tabla o consulta en la que desea basar la consulta y, a continuación, seleccione los campos cuyos datos desea recuperar. 5. Haga clic en una tabla o consulta adicional si lo desea y, a continuación, seleccione los campos que desea utilizar de ella. Repita este paso hasta que disponga de todos los campos que necesite. 59 60 CURSO DE MICROSOFT ACCESS 6. Siga las instrucciones de los cuadros de diálogo del asistente. En el último cuadro de diálogo, puede seleccionar si desea ejecutar la consulta o ver la estructura de la consulta en la vista Diseño. Si la consulta resultante no es exactamente como deseaba, puede volver a ejecutar el asistente o cambiar la consulta en la vista Diseño. Las Expresiones Las expresiones son un componente fundamental de numerosas operaciones en Microsoft Access. Una expresión es una combinación de símbolos (identificadores, operadores y valores) que produce un resultado. Por ejemplo, puede utilizar la expresión siguiente en un control de un formulario o de un informe para mostrar la suma de los valores de los controles Subtotal y Transporte: = [Subtotal] + [Transporte] Éstos son algunos ejemplos de operaciones comunes en las que se utilizan expresiones: Establecer una propiedad que define un control calculado, establecer una regla de validación o establecer un valor predeterminado de un campo. 60 61 CURSO DE MICROSOFT ACCESS Introducir una expresión de criterio, crear un campo calculado o actualizar los registros de una consulta o filtro. Establecer una condición para realizar una acción o serie de acciones de una macro, o especificar argumentos para varias acciones. Especificar argumentos para funciones, instrucciones y métodos de procedimientos de Visual Basic para aplicaciones. Editar una consulta SQL en la vista SQL de la ventana Consulta o utilizar una instrucción SQL como valor de una propiedad o como argumento. Crear un campo que realice cálculos personalizados o que manipule valores de campo en una consulta Puede crear un nuevo campo que muestre los resultados de un cálculo definido con una expresión. 1. Abra la consulta en la vista Diseño. 2. Realice una de las siguientes operaciones: Escriba una expresión en una celda en blanco de la fila Campo. Si la expresión incluye un nombre de campo, debe incluirlo entre corchetes. Si necesita ayuda para crear la expresión, utilice el Generador de expresiones. Para mostrarlo, haga clic con el botón secundario del mouse (ratón) en la celda Campo en la que desee agregar el campo calculado y, a continuación, haga clic en Generar. Al presionar ENTRAR o al moverse a otra celda, Microsoft Access introduce el nombre de campo predeterminado ExprN, donde N es un número entero que se incrementa con cada nuevo campo de expresión de la consulta. El nombre aparece antes de la expresión y va seguido por dos puntos. En una hoja de datos, este nombre es el encabezado de la columna. Puede seleccionar ExprN y escribir un nombre más descriptivo, como NuevoPrecio. 3. Si la expresión incluye una o más funciones agregadas (Suma (Sum), Promedio (Avg), Cuenta (Count), Mín (Min), Máx (Max), DesvEst (StDev) o Var (Var)) y si la cuadrícula de diseño incluye otro campo o campos que desee utilizar para agrupar, haga clic en Totales en la barra de herramientas (a no ser que la fila Total ya esté mostrada). Deje Agrupar por en la celda Total del campo de agrupación y, en el campo calculado, cambie Agrupar por a Expresión. 4. Si lo desea, realice una de las acciones siguientes para completar la consulta: Introduzca criterios que afecten al cálculo. Ordene los resultados. Establezca las propiedades del campo, como por ejemplo Formato (Format) (dado que el campo no hereda las propiedades de la tabla base). 61 62 CURSO DE MICROSOFT ACCESS Notas: Para introducir o ver una expresión completa sin necesidad de desplazar la visualización, presione MAYÚS+F2 para mostrar el cuadro Zoom. Crear una consulta de parámetros que solicite criterios cada que vez que se ejecute Una consulta de parámetros muestra uno o más cuadros de diálogo predefinidos que le solicitarán el valor del parámetro (criterio). También puede crear un cuadro de diálogo personalizado que solicite los parámetros de la consulta. 1. Cree una consulta de selección o de referencias cruzadas. 2. En la vista Diseño de la consulta, arrastre los campos desde la lista de campos de la consulta a la cuadrícula de diseño de la consulta. 3. En la celda Criterios, para cada campo que desee utilizar como parámetro, escriba el texto a solicitar entre corchetes. Microsoft Access mostrará este texto cuando se ejecute la consulta. El texto de la solicitud debe ser diferente del nombre del campo, aunque puede incluir el nombre del campo. Para un campo que muestra la fecha, puede mostrar el texto “Introduzca la fecha inicial:” y el texto “Introduzca la fecha final:” para especificar un intervalo de valores. En la celda Criterio del campo, escriba Between [Introduzca la fecha inicial:] And [Introduzca la fecha final:]. 4. Para ver los resultados, haga clic en el botón Ver en la barra de herramientas y escriba el valor del parámetro. Para volver a la vista Diseño de la consulta, haga clic de nuevo en el botón Ver en la barra de herramientas. Notas: Debe especificar el tipo de dato de los parámetros en la consulta de referencias cruzadas o en una consulta de parámetros en la que se basa una consulta de referencias cruzadas o gráfico. En la consulta de referencias cruzadas, también debe establecer la propiedad Títulos de columna. En otras consultas de parámetros, especifique el tipo de dato de un campo con el tipo Sí/No y de los campos que vienen de una tabla de una base de datos externa SQL. Para solicitar al usuario uno o varios caracteres por los que buscar y, a continuación, buscar registros que comiencen o contengan los caracteres especificados por el usuario, cree una consulta de parámetros que utilice el operador LIKE y el símbolo comodín de asterisco (*). Por ejemplo, la instrucción: LIKE [Escriba el primer carácter por el que buscar: ] & “*” busca palabras que comienzan por la letra especificada. La instrucción: LIKE “*” & [Escriba cualquier carácter por el que buscar: ] & “*” busca palabras que contienen el carácter especificado 62 63 CURSO DE MICROSOFT ACCESS Los Formularios Los formularios son objetos que Access proporciona para ver, introducir o imprimir datos de una o varias tablas. Es la presentación de la información contenida en las tablas a través de la pantalla del ordenador con un diseño intuitivo y agradable. A través de los formularios el usuario visualiza la información contenida en las tablas, examina los resultados de una consulta y altera su contenido introduciendo, modificando o eliminando información en los campos. El formulario es una herramienta de Access que ofrece las mismas funciones de la Hoha de Datos o las Consultas aportando una mejor presentación de cara al usuario final. Las ventajas de usar los formularios consisten en que: Permite presentar los datos de una forma sencilla y atractiva utilizando elementos de diseño como títulos, gráficos, líneas, colores y sombreados. Muestra a la vez todos los campos de un registro, sin utiliar las barras de desplazamiento. Situa los campos con el mismo formato que en los formularios de papel que está utilizando, pudiendo alterar su orden. Evita errores mecanográficos, pues se pueden crear listas desplegables en el formulario partir de las cuales se elige el valor introducido en el campo. Visualiza datos de varias tablas o de una consulta. Calcula totales. Crear un formulario con un asistente El asistente le formula preguntas detalladas acerca de los orígenes de registros, campos, diseño y formato que desee y crea un formulario basado en sus respuestas. 1. En la ventana Base de datos, haga clic en Formularios, bajo Objetos. 2. Haga clic en el botón Nuevo datos. en la barra de herramientas de la ventana Base de 3. En el cuadro de diálogo Nuevo formulario, seleccione el asistente que desea utilizar. En el lado izquierdo del cuadro de diálogo aparecerá una descripción del asistente. 4. Seleccione el nombre de la tabla u otro origen de registros que contiene los datos en los que desea basar el formulario. 63 64 CURSO DE MICROSOFT ACCESS Nota: No es necesario que siga este paso si elige la opción Asistente para formularios; puede especificar el origen de registros para el formulario en el asistente. El Asistente para formularios, Asistente para gráficos o Asistente para tablas dinámicas muestran una serie de instrucciones adicionales. Las opciones Autoformulario: columnas, Autoformulario: tabular o Autoformulario: hoja de datos, permiten a Microsoft Access crear el formulario de forma automática. 5. Elija Aceptar. 6. Seleccione los campos. 7. Seleccione la distribución de los campos 64 65 CURSO DE MICROSOFT ACCESS 8. Seleccione el estilo del informe 9. Escriba un título al informe 65 66 CURSO DE MICROSOFT ACCESS 10. haga clic en el botón Finalizar Si el formulario creado no tiene el aspecto deseado, puede cambiarlo en la vista Diseño. Nota: Si selecciona una de las opciones de Autoformulario, Microsoft Access utiliza el último autoformato especificado, ya sea en el Asistente para formularios o mediante el uso del comando Autoformato del menú Formato en la vista Diseño. Abrir un formulario 1. En la ventana Base de datos, haga clic en Formularios, bajo Objetos. 2. Seleccione el formulario que desea abrir. 3. Elija el botón Abrir para abrir el formulario en la vista Formulario o el botón Diseño para abrir el formulario en la vista Diseño. Sugerencia: También puede abrir un formulario en la vista Formulario arrastrando el formulario desde la ventana Base de datos hasta el fondo de la aplicación. Una vez abierto el formulario, puede alternar con facilidad entre las tres vistas del formulario haciendo clic en el botón Vista de la barra de herramientas. Vistas de un formulario Los formularios tienen tres vistas: vista Diseño, vista Formulario y vista Hoja de datos. Para crear un formulario se utiliza la vista Diseño. La visualización de un formulario en la vista Diseño es equivalente a trabajar en un taller rodeado de útiles herramientas. Una vez creado un formulario en la vista Diseño, puede visualizarlo en la vista Formulario o en la vista Hoja de datos. 66 67 CURSO DE MICROSOFT ACCESS Guardar un formulario 1. Haga clic en el botón Guardar de la barra de herramientas. 2. Si está guardando un formulario por primera vez, escriba un nombre que siga las reglas para dar nombre a formularios de Microsoft Access en el cuadro de diálogo Guardar como y, a continuación, elija Aceptar. Si hace clic en Cancelar en el cuadro de diálogo Guardar como, el objeto no se guardará. Eliminar un formulario 1. Cierre el formulario que desee eliminar. En un entorno multiusuario, confirme que todos los usuarios han cerrado el objeto. 2. En la ventana Base de datos, bajo la sección Objetos, seleccione Formularios. 3. Seleccione el Formulario en la Lista de objetos y presione la tecla SUPRIMIR. Crear un formulario sin un Asistente Puede utilizar los siguientes pasos como guía para la creación de un formulario desde el principio hasta el final. Muchos de estos pasos serán útiles para crear cualquier tipo de formulario. Los demás pasos serán útiles cuando tenga que crear un tipo determinado de formulario; por ejemplo, un formulario que muestre datos de más de una tabla. Sólo tendrá que utilizar los pasos necesarios para el tipo de formulario que esté creando. Puede utilizar las técnicas siguientes para personalizar un formulario que haya creado con un asistente o para crear completamente un formulario. 67 68 CURSO DE MICROSOFT ACCESS Paso 1: Iniciar el formulario 1. En la ventana Base de datos, haga clic en Formularios, bajo Objetos. 2. Haga clic en el botón Nuevo en la barra de herramientas de la ventana Base de datos. 3. En el cuadro de diálogo Nuevo formulario, haga clic en vista Diseño. 4. Seleccione el nombre de la tabla u otro origen de registros que contenga los datos en los que desea basar el formulario. Si el formulario no va a contener datos (por ejemplo, si desea crear un formulario para utilizarlo como panel de control para abrir otros formularios o informes o si desea crear un cuadro de diálogo personalizado), no seleccione nada en la lista. Nota Si desea crear un formulario que utilice datos de más de una tabla, base el formulario en una consulta. 5. Elija Aceptar. 68 69 CURSO DE MICROSOFT ACCESS Paso 2: Agregar encabezados y pies de página 1. Abra el formulario en la vista Diseño. 2. En el menú Ver, elija Encabezado o pie de formulario o Encabezado o pie de página. Paso 3: Mostrar datos, texto y totales en el formulario 69 70 CURSO DE MICROSOFT ACCESS Para mostrar datos 1. Abra un formulario en la vista Diseño, un informe en la vista Diseño o una página de acceso a datos en la vista Diseño. 2. Haga clic en Lista de campos en la barra de herramientas. Aparecerá la lista de campos. En un formulario o informe, si el botón de la lista de campos o el comando no están disponibles, tendrá que hacer depender el formulario o el informe de un origen de registros. Si la lista de campos está vacía en una página de acceso a datos, deberá conectar la página a una base de datos. 3. Siga uno de estos procedimientos: Seleccione uno o más campos de la lista de campos en un formulario o un informe. Seleccione una campo, tabla o consulta en la lista de campos en una página de acceso a datos. 4. Siga uno de estos procedimientos: Arrastre el campo o los campos desde la lista de campos y póngalos en el formulario o informe. Arrastre el campo, tabla o consulta de la lista de campos y colóquelo en la página de acceso a datos. En el cuadro de diálogo Asistente para formato, haga clic en Controles individuales. 5. Rehaga el tamaño del cuadro de texto de forma que tenga el tamaño adecuado para los datos que desea mostrar. 6. Si es necesario, cambie el texto de la etiqueta. 7. Cambie a la vista Formulario, vista Hoja de datos, vista Página o Vista preliminar para comprobar el control. Para mostrar texto o etiqueta Utilice este procedimiento para crear una etiqueta individual (una etiqueta que no está adherida a ningún otro control). Para crear una etiqueta que se adjunta a un control, simplemente cree el control. Microsoft Access adjunta de forma automática una etiqueta al control cuando lo crea. 1. Abra un formulario en la vista Diseño, un informe en la vista Diseño o una página de acceso a datos en la vista Diseño. 2. Haga clic en la herramienta Etiqueta en el Cuadro de Herramientas. 3. En el formulario, informe o página de acceso a datos, haga clic en donde desee colocar la etiqueta, e introduzca a continuación el texto de la etiqueta. 70 71 CURSO DE MICROSOFT ACCESS Para calcular un total 1. Abra el formulario en la vista Diseño. 2. Haga clic en la herramienta Cuadro de texto en el cuadro de herramientas. 3. En la sección de detalles del formulario, haga clic en el lugar en el que desee colocar el cuadro de texto. 4. Realice una de las siguientes acciones: Coloque el punto de inserción en el cuadro de texto y escriba una expresión que calcule el total. Asegúrese de que el cuadro de texto está seleccionado, haga clic en Propiedades en la barra de herramientas para abrir su hoja de propiedades y escriba la expresión en el cuadro de la propiedad OrigenDelControl (ControlSource). En una base de datos de Microsoft Access (.MDB), a fin de utilizar el Generador de expresiones para crear la expresión, presione el botón Generar al cuadro de la propiedad OrigenDelControl (ControlSource). Paso 4: Dar formato, mover, alinear y ajustar el tamaño de etiquetas, cuadros de texto y otros controles Para dar formato 1. Abra un formulario en la vista Diseño, un informe en la vista Diseño o una página de acceso a datos en la vista Diseño. 2. Seleccione el control que contiene el texto que desea cambiar. 3. En la barra de herramientas Formato de formulario o informe o la barra de herramientas Formato de página de acceso a datos, haga clic en Negrita aparezca en negrita, haga clic en Cursiva Subrayado para hacer que el texto para que aparezca en cursiva o haga clic en para que aparezca subrayado. Para mover 1. Abra un formulario en la vista Diseño, un informe en la vista Diseño o una página de acceso a datos en la vista Diseño. 2. Elija el control o su etiqueta. Cuando hace clic en cualquiera de las partes de un control compuesto en formularios e informes, Microsoft Access muestra los controles de desplazamiento de ambos controles, así como los controles de tamaño del control en el que ha hecho clic. En páginas de acceso a datos, cuando se selecciona el control, la etiqueta no se selecciona automáticamente. Si desplaza el control, la etiqueta irá con él, pero si desplaza la etiqueta, el control no se moverá. 1. Mueva el puntero por encima del borde (no del controlador de movimiento) del control o de su etiqueta. En los formularios e informes, el puntero se convierte en una mano abierta. En las páginas de acceso a datos, el puntero se convierte en una flecha de cuatro puntas. Después de que cambie el puntero, arrastre los controles a una nueva posición. 71 72 CURSO DE MICROSOFT ACCESS Para ajustar el tamaño 1. Abra un formulario en la vista Diseño, un informe en la vista Diseño o una página de acceso a datos en la vista Diseño. 2. Elija el control o controles que desea cambiar de tamaño. 3. Arrastre los controladores de tamaño hasta que el control sea del tamaño que desea. En un formulario o informe, si selecciona más de un control, todos los controles cambian de tamaño cuando arrastra el controlador de tamaño de un control. Para alinear 1. Abra un formulario en la vista Diseño, o un informe en la vista Diseño. 2. Seleccione los controles que desea alinear. Seleccione solamente controles situados en la misma fila o columna. 3. En el menú Formato, sitúe el puntero en Alinear y elija uno de los siguientes comandos: Izquierda. Alinea los límites izquierdos de los controles con el límite izquierdo del control situado más a la izquierda. Derecha. Alinea los límites derechos de los controles con el límite derecho del control situado más a la derecha. Arriba. Alinea los límites superiores de los controles con el límite superior del control situado más arriba. Abajo. Alinea los límites inferiores de los controles con el límite inferior del control situado más abajo. Paso 5: Mostrar registros de una tabla relacionada en un subformulario Subformularios 72 73 CURSO DE MICROSOFT ACCESS Un subformulario es un formulario dentro de un formulario. El formulario primario se llama formulario principal y el formulario dentro del formulario se llama subformulario. Una combinación formulario/subformulario se llama a menudo formulario jerárquico, formulario principal/detalle o formulario principal/secundario. Los subformularios son muy eficaces cuando se desea mostrar datos de tablas o consultas con una relación uno a varios. Por ejemplo, puede crear un formulario con un subformulario para mostrar los datos de una tabla Categorías y de una tabla Productos. Los datos de la tabla Categorías es el lado “uno” de la relación. Los datos de la tabla Productos constituyen el lado “varios” de la relación, ya que cada categoría tiene más de un producto. El formulario principal y subformulario de este tipo de formularios están vinculados para que el subformulario presente sólo los registros que están relacionados con el registro actual del formulario principal. Por ejemplo, cuando el formulario principal presenta la categoría Bebidas, el subformulario muestra sólo los productos de la categoría Bebidas. Cuando utilice un formulario con un subformulario para introducir nuevos registros, Microsoft Access guarda el registro actual en el formulario principal cuando se introduce el subformulario. Esto asegura que los registros de la tabla “varios” tengan un registro en la tabla “uno” con el que relacionarse. También guarda automáticamente cada registro conforme lo agregue al subformulario. Un subformulario se puede mostrar como una hoja de datos, como en la ilustración precedente o como un formulario simple o continuo. Un formulario principal sólo se puede presentar como formulario simple. Un formulario principal puede tener cualquier número de subformularios si coloca cada subformulario en el formulario principal. Puede anidar hasta diez niveles de subformularios. Esto significa que puede tener un subformulario dentro de un formulario principal y que puede tener otro subformulario dentro de ese subformulario, y así sucesivamente. Por ejemplo, podría tener un formulario principal que mostrara los clientes, un subformulario que presentara los pedidos y otro subformulario más que mostrara los detalles de los pedidos. Crear un subformulario y agregarlo a un formulario existente Antes de utilizar este procedimiento, asegúrese de que ha configurado la tabla de relaciones correctamente. 1. Abra el formulario que desee agregar al subformulario en la vista Diseño. 2. Asegúrese de que la herramienta Asistentes para controles está presionada. 3. Haga clic en la herramienta Subformulario/Subinforme en el cuadro de herramientas del cuadro de herramientas. 4. En el formulario, haga clic en el lugar donde desee colocar el subformulario. 5. Siga las indicaciones de los cuadros de diálogo del asistente. 6. Cuando haga clic en Terminar, Microsoft Access agregará un control de subformulario al formulario. También creará un formulario independiente para el subformulario. 73 74 CURSO DE MICROSOFT ACCESS Paso 6: Realizar los ajustes finales Comprobar el diseño de un formulario observándolo en vista Formulario o en vista Hoja de datos: Haga clic en el botón Vista de la barra de herramientas. Para cambiar la vista indicada por el botón, haga clic en el propio botón. Para ver una lista de las otras vistas que se pueden seleccionar, haga clic en la flecha situada junto al botón. Los Informes Los informes son los objetos de Microsoft Access que permiten presentar en papel los datos que están almacenados en las tablas o consultas. Aunque es posible imprimir los formularios y las hojas de datos, los informes permiten un mayor control sobre la apariencia final de la presentación de los datos y la posibilidad de presentar subtotales y resúmenes de totales por categorías de información, así como calcular el porcentaje que representa cada categoría sobre el total. Un informe es la forma de recuperar y presentar la información almacenada en una base de datos de forma clara y atractiva, aunque no se puede utilizar para modificar la información de la tabla o consulta en la que están basados. Un informe es un método eficaz de presentar los datos en formato impreso. Dado que tiene el control sobre el tamaño y el aspecto de todo el informe, puede mostrar la información en la manera que desee verla: 74 75 CURSO DE MICROSOFT ACCESS Abrir un informe 1. En la ventana Base de datos, haga clic en Informes , bajo Objetos. 2. Elija el informe que desea abrir. 3. En la barra de herramientas de la ventana Base de datos, haga clic en el botón Diseño para abrir el informe en la vista Diseño, o haga clic en el botón Vista preliminar para abrir el informe en Vista preliminar. Sugerencia: También puede abrir un informe en Vista preliminar arrastrando el informe de la ventana Base de datos al fondo de la aplicación. Crear un informe mediante un asistente El asistente le formula preguntas detalladas acerca de los orígenes de registros, campos, diseño y formato que desee y crea un informe basado en sus respuestas. 1. En la ventana Base de datos, haga clic en Informes 2. Haga clic en el botón Nuevo datos. , bajo Objetos. en la barra de herramientas de la ventana Base de 3. En el cuadro de diálogo Nuevo Informe, elija el asistente que desea utilizar. Una descripción del asistente aparece en el lado izquierdo del cuadro de texto. 4. Elija la tabla o consulta que contiene los datos en los que desea basar su informe. 5. Nota: Microsoft Access utiliza esa tabla o consulta como el origen de datos predeterminada para el informe. Sin embargo, puede cambiar el origen de datos del asistente y seleccionar campos de otras tablas y consultas. 6. Las opciones Asistente para informes, Asistente para gráficos o Asistente para etiquetas presentan unas instrucciones adicionales. Las opciones Autoinforme: tabular o Autoinforme: en columnas, permiten a Microsoft Access crear automáticamente el informe. 7. Haga clic en Aceptar. 8. Seleccione los campos. 75 76 CURSO DE MICROSOFT ACCESS 9. Agregue un nivel de agrupamiento si lo desea. 10. Agregue una ordenación si lo desea. 11. Seleccione la distribución de los datos en el informe y la orientación. 76 77 CURSO DE MICROSOFT ACCESS 12. Seleccione el estilo. 13. Escriba el título el informe. 14. Haga clic en el botón Finalizar. Si el informe obtenido no tiene el aspecto deseado, puede cambiarlo en la vista Diseño. Guardar un informe 77 78 CURSO DE MICROSOFT ACCESS 1. Haga clic en el botón Guardar de la barra de herramientas. 2. Si está guardando un informe por primera vez, escriba un nombre que siga las reglas para dar nombre a informes de Microsoft Access en el cuadro de diálogo Guardar como y, a continuación, elija Aceptar. Si hace clic en Cancelar en el cuadro de diálogo Guardar como, el objeto no se guardará. Eliminar un informe 1. Cierre el informe que desee eliminar. En un entorno multiusuario, confirme que todos los usuarios han cerrado el objeto. 2. En la ventana Base de datos, bajo la sección Objetos, seleccione Informes. 3. Seleccione el informe en la Lista de objetos y presione la tecla SUPRIMIR. Crear un informe sin un Asistente Puede utilizar los siguientes pasos como guía para la creación de un informe desde el principio hasta el final. Muchos de estos pasos serán útiles para crear cualquier tipo de informe. Los demás pasos serán útiles cuando tenga que crear un tipo determinado de informe; por ejemplo, un informe que requiera agrupar registros por categorías o calcular totales. Sólo tendrá que utilizar los pasos necesarios para el tipo de informe que esté creando. Paso 1: Iniciar el informe Crear un informe vacío y seleccionar el origen de los registros 1. En la ventana Base de datos, haga clic en Informes 2. Haga clic en el botón Nuevo datos. , bajo Objetos. en la barra de herramientas de la ventana Base de 3. En el cuadro de diálogo Nuevo Informe, haga clic en Vista diseño. 78 79 CURSO DE MICROSOFT ACCESS 4. Elija el nombre de la tabla o consulta que contiene los datos en los que desea basar el informe. (Si desea un informe independiente, no seleccione nada de esta lista) 5. Sugerencia: Si desea crear un informe que utilice datos de más de una tabla, base su informe en una consulta. 6. Haga clic en Aceptar. Microsoft Access presenta el informe en la vista Diseño. Paso 2: Ordenar o agrupar los datos del informe Ordenar los registros en un informe En un informe se puede ordenar hasta por 10 campos o expresiones. 1. Abra el informe en la vista Diseño. 2. Haga clic en Ordenar y agrupar Ordenar y agrupar. en la barra de herramientas para mostrar el cuadro 3. En la primera fila de la columna Campo/Expresión, seleccione un nombre de campo o escriba una expresión. 79 80 CURSO DE MICROSOFT ACCESS 4. El campo o expresión de la primera fila es el primer nivel de ordenación (el conjunto mayor). La segunda fila es el segundo nivel de ordenación y así sucesivamente. 5. Cuando se rellena la columna Campo/Expresión, Microsoft Access establece el tipo de orden a Ascendente. El tipo de orden ascendente ordena desde la A a la Z o desde 0 a 9. 6. Para cambiar el tipo de orden, seleccione Descendente en la lista Tipo de orden. El orden Descendente ordena desde la Z a la A o desde 9 a 0. Agrupar registros en un informe En un informe se pueden agrupar hasta 10 campos o expresiones. 1. Abra el informe en la vista Diseño. 2. Haga clic en el botón Ordenar y agrupar cuadro Ordenar y agrupar. de la barra de herramientas para mostrar el 3. Establezca el tipo de orden para los datos del informe. 4. Haga clic en el campo o expresión cuyas propiedades de grupo desee establecer. 5. Establezca las propiedades de grupo en la siguiente lista. Se debe establecer a Sí o Encabezado del grupo o Pie del grupo para crear un nivel de grupo y establecer las demás propiedades de agrupamiento. Encabezado del grupo. Agrega o elimina un encabezado del grupo para el campo o expresión. Pie del grupo. Agrega o elimina un pie de grupo para el campo o expresión. AgruparEn (GroupOn). Especifica cómo se desean agrupar los valores. Las opciones que se ven dependen del tipo de datos del campo por el que se está agrupando. Si se agrupa por una expresión, verá todas las opciones para todos los tipos de datos. IntervaloDelGrupo (GroupInterval). Especifica cualquier intervalo que sea válido para los valores en el campo o expresión por el que esté agrupando. MantenerJuntos (KeepTogether). Especifica si Microsoft Access debe imprimir todo o sólo parte de un grupo en la misma página. Paso 3: Agregar encabezados y pies de página La información de un informe puede dividirse en secciones. Cada sección tiene una finalidad específica y se imprime en un orden predecible en la página y en el informe. 80 81 CURSO DE MICROSOFT ACCESS Agregar o quitar un encabezado y pie de informe o un encabezado y pie de página 1. Abra el informe en la vista Diseño. 2. Haga clic en Encabezado o pie del informe o en Encabezado o pie de página en el menú Ver. Paso 4: Mostrar datos, texto y totales en el informe Controles Toda la información de un formulario o informe está contenida en los controles. En las páginas de acceso a datos, la información se almacena en controles del mismo modo que se hace con formularios e informes. Sin embargo, la información también se puede escribir directamente en la página de acceso a datos. Los controles son objetos de un formulario, informe o página de acceso a datos que muestran datos, realizan acciones o se utilizan como decoración. Por ejemplo, puede utilizar un cuadro de texto en un formulario, informe o página de acceso a datos para mostrar datos, un botón de comando en un formulario para abrir otro formulario o informe, o una línea o un rectángulo para separar y agrupar controles con el fin de hacerlos más legibles. Microsoft Access incluye los siguientes tipos de controles, a los cuales se puede tener acceso a través del cuadro de herramientas en la vista Diseño del formulario, en la vista Diseño del informe o en la vista Diseño de la página de acceso a datos: cuadro de texto, etiqueta, grupo de opciones, botón de opción, casilla de verificación, cuadro de lista, botón de comando, imagen, línea, rectángulo y controles ActiveX personalizados. Los formularios e informes disponen de estos controles adicionales: botón de alternar, cuadro combinado, marco de objeto dependiente, marco de objeto independiente, subformulario/subinforme y salto de página. Las páginas de acceso a datos también incluyen el cuadro de lista desplegable, hipervínculos, texto de desplazamiento y la lista de tabla dinámica, hoja de cálculo y componentes gráficos. Los controles pueden ser dependientes, independientes o calculados. Un control dependiente está unido a un campo de una tabla o consulta base. Los controles dependientes se utilizan para mostrar, introducir y actualizar valores de los campos de la base de datos. Un control independiente no tiene un origen de los datos. Puede utilizar los controles independientes para mostrar información, líneas, rectángulos e imágenes. La ilustración siguiente muestra ejemplos de controles dependientes, independientes y calculados. Un control calculado utiliza una expresión como origen de los datos. Una expresión puede utilizar datos de un campo de una tabla o consulta base de un formulario o informe o bien datos de otro control del formulario o informe. 81 82 CURSO DE MICROSOFT ACCESS Para mostrar datos 1. Abra un formulario en la vista Diseño, un informe en la vista Diseño o una página de acceso a datos en la vista Diseño. 2. Haga clic en Lista de campos en la barra de herramientas. Aparecerá la lista de campos. En un formulario o informe, si el botón de la lista de campos o el comando no están disponibles, tendrá que hacer depender el formulario o el informe de un origen de registros. Si la lista de campos está vacía en una página de acceso a datos, deberá conectar la página a una base de datos. 3. Siga uno de estos procedimientos: Seleccione uno o más campos de la lista de campos en un formulario o un informe. Seleccione una campo, tabla o consulta en la lista de campos en una página de acceso a datos. 4. Siga uno de estos procedimientos: Arrastre el campo o los campos desde la lista de campos y póngalos en el formulario o informe. Arrastre el campo, tabla o consulta de la lista de campos y colóquelo en la página de acceso a datos. En el cuadro de diálogo Asistente para formato, haga clic en Controles individuales. 5. Rehaga el tamaño del cuadro de texto de forma que tenga el tamaño adecuado para los datos que desea mostrar. 6. Si es necesario, cambie el texto de la etiqueta. 7. Cambie a la vista Formulario, vista Hoja de datos, vista Página o Vista preliminar para comprobar el control. Para mostrar texto o etiqueta Utilice este procedimiento para crear una etiqueta individual (una etiqueta que no está adherida a ningún otro control). Para crear una etiqueta que se adjunta a un control, simplemente cree el control. Microsoft Access adjunta de forma automática una etiqueta al control cuando lo crea. 1. Abra un formulario en la vista Diseño, un informe en la vista Diseño o una página de acceso a datos en la vista Diseño. 2. Haga clic en la herramienta Etiqueta en el Cuadro de Herramientas. 3. En el formulario, informe o página de acceso a datos, haga clic en donde desee colocar la etiqueta, e introduzca a continuación el texto de la etiqueta. 82 83 CURSO DE MICROSOFT ACCESS Para calcular un total 1. Abra el informe en la vista Diseño. 2. Agregue un cuadro de texto calculado a la sección de detalle. 3. Para ver la hoja propiedades, asegúrese de que el cuadro de texto esté seleccionado, y luego haga clic en el botón Propiedades de la barra de herramientas. 4. En el cuadro de la propiedad OrigenDelControl (ControlSource), introduzca una expresión apropiada. Paso 5: Dar formato, mover, alinear y ajustar el tamaño de etiquetas, cuadros de texto y otros controles Para dar formato 1. Abra un formulario en la vista Diseño, un informe en la vista Diseño o una página de acceso a datos en la vista Diseño. 2. Seleccione el control que contiene el texto que desea cambiar. 3. En la barra de herramientas Formato de formulario o informe o la barra de herramientas Formato de página de acceso a datos, haga clic en Negrita aparezca en negrita, haga clic en Cursiva Subrayado para hacer que el texto para que aparezca en cursiva o haga clic en para que aparezca subrayado. Para mover 1. Abra un formulario en la vista Diseño, un informe en la vista Diseño o una página de acceso a datos en la vista Diseño. 2. Elija el control o su etiqueta. Cuando hace clic en cualquiera de las partes de un control compuesto en formularios e informes, Microsoft Access muestra los controles de desplazamiento de ambos controles, así como los controles de tamaño del control en el que ha hecho clic. En páginas de acceso a datos, cuando se selecciona el control, la etiqueta no se selecciona automáticamente. Si desplaza el control, la etiqueta irá con él, pero si desplaza la etiqueta, el control no se moverá. 3. Mueva el puntero por encima del borde (no del controlador de movimiento) del control o de su etiqueta. En los formularios e informes, el puntero se convierte en una mano abierta. En las páginas de acceso a datos, el puntero se convierte en una flecha de cuatro puntas. Después de que cambie el puntero, arrastre los controles a una nueva posición. 83 84 CURSO DE MICROSOFT ACCESS Para ajustar el tamaño 1. Abra un formulario en la vista Diseño, un informe en la vista Diseño o una página de acceso a datos en la vista Diseño. 2. Elija el control o controles que desea cambiar de tamaño. 3. Arrastre los controladores de tamaño hasta que el control sea del tamaño que desea. En un formulario o informe, si selecciona más de un control, todos los controles cambian de tamaño cuando arrastra el controlador de tamaño de un control. Para alinear 1. Abra un formulario en la vista Diseño, o un informe en la vista Diseño. 2. Seleccione los controles que desea alinear. Seleccione solamente controles situados en la misma fila o columna. 3. En el menú Formato, sitúe el puntero en Alinear y elija uno de los siguientes comandos: Izquierda. Alinea los límites izquierdos de los controles con el límite izquierdo del control situado más a la izquierda. Derecha. Alinea los límites derechos de los controles con el límite derecho del control situado más a la derecha. Arriba. Alinea los límites superiores de los controles con el límite superior del control situado más arriba. Abajo. Alinea los límites inferiores de los controles con el límite inferior del control situado más abajo. Paso 6: Obtener una vista previa o imprimir el informe Establecer las opciones de configuración de página para una tabla, consulta, formulario o informe 1. Abra la base de datos en una de las vistas siguientes. Abra una tabla o consulta en la vista Hoja de datos o Vista preliminar. Abra un formulario o informe en cualquier vista (o desde la ventana Base de datos). Nota: Las opciones de configuración de página no están disponibles para macros ni módulos. 2. En el menú Archivo, elija Configurar página. 84 85 CURSO DE MICROSOFT ACCESS 3. Haga clic en las fichas siguientes para configurar las opciones que desee: Márgenes. Para establecer los márgenes y para imprimir sólo datos (para formularios e informes) o para imprir encabezados (para tablas o consultas). Página. Para configurar la orientación, el tamaño del papel y la impresora. Columnas. Para establecer el número, tamaño y diseño de las columnas solamente para formularios e informes. 4. Haga clic en Aceptar. Microsoft Access guarda el valor de las opciones de configuración de página junto con un formulario o informe, de modo que sólo necesitará establecerlas una vez para cada formulario o informe. Para las tablas, consultas y módulos, deberá establecer opciones de configuración de página cada vez que imprima. Ver una vista previa del diseño de un informe Visualizar un informe mediante la vista previa muestra cómo aparecerá una vez impreso. Puede visualizar el diseño, que contiene un ejemplo de los datos del informe, o bien puede comprobar la información revisando todas las páginas del informe. La vista previa del diseño de un informe es una forma rápida de ver el diseño de un informe, ya que Microsoft Access sólo utiliza aquella información de la tabla o consulta necesaria para mostrarle el aspecto final del informe. Si desea visualizar la información exacta que aparecerá en el informe, use Vista preliminar. En la vista Diseño de un informe, haga clic en la flecha situada junto al botón Vista barra de herramientas y luego en Vista previa del diseño. de la 85 86 CURSO DE MICROSOFT ACCESS Ver una vista previa de los datos de un informe Para obtener una vista previa de un informe desde la vista Diseño, haga clic en Vista preliminar en la barra de herramientas. Para obtener una vista previa de un informe desde la ventana Base de datos: 1. Haga clic en Informes , bajo Objetos. 2. Seleccione el informe que desea ver. 3. En la barra de herramientas de la ventana Base de datos, haga clic en el botón Vista previa . Subinformes Un subinforme es un informe que se inserta en otro informe. Al combinar informes, uno de ellos debe servir como informe principal. Un informe principal es dependiente o independiente; es decir, se basa o no se basa en una tabla, una consulta o una instrucción SQL. Datos de orígenes de registros no relacionados en un informe principal con dos subinformes Un informe principal independiente puede servir como contenedor para subinformes no relacionados que desea combinar. 86 87 CURSO DE MICROSOFT ACCESS Datos de un origen de registros en un informe principal y un subinforme Vincule el informe principal a una tabla, una consulta o una instrucción SQL base cuando desee insertar subinformes que contengan información relacionada con los datos del informe principal. Por ejemplo, puede utilizar el informe principal para mostrar registros detallados, como todas las ventas de un año y utilizar un subinforme para mostrar información de resumen, como las ventas totales de cada trimestre. Datos de orígenes de registros relacionados en un informe principal y dos subinformes Un informe principal también puede contener datos comunes a dos o más subinformes paralelos. En este caso, los subinformes contienen los registros detallados relacionados con los datos comunes. Un informe principal puede incluir subformularios así como subinformes, y puede incluir tantos subformularios y subinformes como desee. Además, un informe principal puede contener hasta dos niveles de subformularios y subinformes. Por ejemplo, un informe puede contener un subinforme, y ese subinforme puede contener un subformulario o un subinforme. La tabla siguiente muestra las posibles combinaciones de subformularios y subinformes en un informe principal. 87 88 CURSO DE MICROSOFT ACCESS Crear un subinforme El modo de crear un subinforme depende de si desea crearlo en un informe existente o agregar un informe existente a otro informe existente para crear un informe y un subinforme. Crear un subinforme en un informe existente Si el subinforme se va a vincular al informe principal, compruebe que ha configurado correctamente las relaciones de tabla antes de utilizar este procedimiento. 1. Abra el informe que desea utilizar como informe principal en la vista Diseño. 2. Compruebe que la herramienta Asistentes para controles está presionada. 3. Haga clic en Subformulario/Subinforme en el cuadro de herramientas en el cuadro de herramientas. 4. En el informe, haga clic donde desee situar el subinforme. 5. Siga las instrucciones de los cuadros de diálogo del asistente. Cuando haga clic en el botón Terminar, Microsoft Access agregará un control de subinforme a su informe. También creará otro informe que se mostrará como subinforme. Agregar un informe existente a otro para crear un subinforme Si el subinforme se va a vincular al informe principal, asegúrese de que ha configurado correctamente las relaciones de tabla antes de utilizar este procedimiento. 1. Abra el informe que desea utilizar como informe principal en la vista Diseño. 2. Compruebe que la herramienta Asistentes para controles está presionada. en el cuadro de herramientas 3. Presione F11 para cambiar a la ventana Base de datos. 4. Arrastre un informe o una hoja de datos desde la ventana Base de datos a la sección del informe principal donde desea que aparezca el subinforme. Microsoft Access agregará un control de subinforme al informe. La Impresión La impresión permite obtener una copia impresa de los datos contenidos en una base de datos. Microsoft Acces permite imprimir los siguientes objetos: Hojas de Datos: al imprimir una hoja de datos se obtienen los registros que se encuentran en la tabla, la consulta o el formulario seleccionado, en el mismo orden en que aparecen. Formularios: se obtienen los datos que se encuentran en el formulario junto a las etiquetas y controles establecidos. Informes: es el objeto que más se imprime, pues presenta los datos con un aspecto más legible, permite mostrar datos procedentes de varias tablas relacionadas y además será posible agrupar y ordenar los registros según el contenido de uno o mas campos. 88 89 CURSO DE MICROSOFT ACCESS Configurar la Impresión Microsoft Acces permite, para los formularios y los informes, establecer características relativas a la impresión. Para ellos se deben seguir los siguientes pasos: 1. Abrir la base de datos y seleccionar el objeto que se desea imprimir. 2. Seleccione el comando Configurar Página del menú Archivo. 3. Aparece el cuadro de diálogo Configurar Página. Si el objeto seleccionado es una tabla o consulta el cuadro estará formado por las fichas Márgenes y Página. Si el objeto seleccionado es un formulario o informe el cuadro estará formado por las fichas Márgenes, Página y Columnas. 4. En la ficha Márgenes se establecen los márgenes Superior, Inferior, Izquierdo y Derecho. Seleccione Encabezados de impresión para imprimir los encabezados de las columnas al imprimir una hoja de datos. Seleccione Imprimir sólo los datos para omitir las etiquetas, los bordes de los controles, la cuadrícula y los elementos gráficos, como líneas y cuadros, al imprimir un formulario o informe. 5. En la ficha Página se establece la orientación (vertical, horizontal), el tamaño del papel, y la impresora. 89 90 CURSO DE MICROSOFT ACCESS 6. En la ficha Columnas establece las opciones de la cuadrícula (No. de columnas, espacio entre filas y espacio entre columnas), El ancho y alto de la comuna y el diseño de la columna. 7. Haga clic en el botón Aceptar. 90 91 CURSO DE MICROSOFT ACCESS Imprimir Una vez establecidas las opciones de impresión se puede imprimir, para ello siga estos pasos: 1. Abrir la ventana de la base de datos y seleccionar el objeto que se desea imprimir. 2. Seleccione el comando Imprimir del menú Archivo. 3. Aparece el cuadro de diálogo Imprimir donde se establecen algunas acarcaterísticas relativas a la impresión. 4. Haga clic en Aceptar. Si se hacle clic sobre el botón Imprimir de la barra de herramientas, no aparece el cuadro de diálogo, pero ejecuta de igual forma la acción de imprimir. El botón Configurar muestra el cuadro de diálogo Configurar Página. Las Macros Una macro es un conjunto de una o más acciones que cada una realiza una operación determinada, tal como abrir un formulario o imprimir un informe. Las macros pueden ayudar a automatizar las tareas comunes. Por ejemplo, puede ejecutar una macro que imprima un informe cuando el usuario haga clic en un botón de comando. 91 92 CURSO DE MICROSOFT ACCESS Una macro puede ser una macro compuesta de una secuencia de acciones, o puede ser un grupo de macros. También se puede usar una expresión condicional para determinar si se llevará a cabo una acción en algunos casos cuando se ejecute la macro. Una secuencia de acciones La siguiente macro está compuesta de una serie de acciones. Microsoft Access lleva a cabo estas acciones cada vez que se ejecuta la macro. Para ejecutar esta macro se hace referencia al nombre de la macro Revisar Productos. Un grupo de macros Si tiene numerosas macros, agrupar las macros relacionadas en grupos de macros puede ayudar a administrar la base de datos más fácilmente. Para mostrar los nombres de las macros de un grupo de macros, haga clic en Nombres de macros en el menú Ver en la ventana Macro. Por ejemplo, el siguiente grupo de macros, llamado Botones, está compuesto de tres macros relacionadas: Empleados, Productos, y Representantes. Cada macro lleva a cabo la acción AbrirFormulario, y la macro Productos lleva también a cabo la acción DesplazarTamaño. El nombre en la columna Nombre de macro identifica a cada macro. Cuando se ejecuta una macro en un grupo de macros, Access lleva a cabo la acción de la columna acción y cualquier otra acción que siga inmediatamente, cuya columna Nombre de macro esté en blanco. Para ejecutar una macro en un grupo de macros, utilice el nombre del grupo de macros seguido de un punto y a continuación el nombre de macro. En el ejemplo anterior, para hacer referencia a la macro Empleados en el grupo de macros Botones, escribiría Botones.Empleados. Acciones condicionales Para mostrar la columna Condición, haga clic en Condiciones en el menú Ver en la ventana Macro. La siguiente macro ejecuta las acciones CuadroMsj y DetenerMacro sólo cuando la expresión en la columna Condición sea verdadera (cuando hay un valor Nulo en el campo IdProveedor). 92 93 CURSO DE MICROSOFT ACCESS Crear una macro 1. En la ventana Base de datos, haga clic en Macros , bajo Objetos. 2. Haga clic en el botón Nuevo en la barra de herramientas de la ventana Base de datos. 3. En la columna Acción, haga clic en la flecha para presentar la lista de acciones. 4. Haga clic en la acción que desee utilizar. 5. Introduzca un comentario para la acción. Los comentarios son opcionales pero harán la macro más fácil de entender y mantener. 6. En la parte inferior de la ventana, especifique los argumentos de la acción, si es que se requiere alguno. 7. Para agregar más acciones a la macro, muévase a otra fila de acción y repita los pasos 3 a 6. Microsoft Access lleva a cabo las acciones en el orden en el que se enumeren. Sugerencia: Para crear rápidamente una macro que lleva a cabo una acción sobre un objeto de base de datos específico, arrastre el objeto desde la ventana Base de datos hasta una fila de acción en la ventana Macros. Por ejemplo, puede crear una macro que abra un formulario arrastrando el formulario a una fila de acción. Para hacer esto, haga clic en Mosaico vertical en el menú Ventana para posicionar la ventana Macros y la ventana Base de datos de forma que aparezcan una junto a otra en su pantalla; en la ventana Base de datos, bajo Objetos, haga clic en el tipo de objeto que desee, a continuación, en el objeto y, por último, arrástrelo hasta una fila de acción. Arrastrar una macro o un procedimiento agrega una acción que ejecuta la macro o el procedimiento, mientras que arrastrar otros objetos de base de datos agrega una acción que abre el objeto. Ejecutar una macro Cuando ejecuta una macro, Microsoft Access comienza desde el principio de la macro y lleva a cabo todas las acciones en la macro hasta que alcanza o bien otra macro (si la macro se encuentra en un grupo de macros) o el fin de la macro. Una macro puede ser ejecutada directamente, desde otra macro o un procedimiento de evento, o como respuesta a un evento que se produce en un formulario o informe, o un control en un formulario o informe. Por ejemplo, puede agregar una macro a un botón de comando de forma que la macro se ejecute cuando el usuario presiona el botón. También puede crear un comando de menú personalizado o un botón de la barra de herramientas que ejecute una macro, asignar una macro a una combinación de teclas, o ejecutar automáticamente una macro al abrir una base de datos. Ejecutar una macro directamente Ejecute directamente una macro, haciendo lo siguiente: Para ejecutar directamente una macro desde la ventana Macro, haga clic en Ejecutar la barra de herramientas. Para ejecutar una macro desde la ventana Base de datos, haga clic en Macros haga doble clic en el nombre de la macro. Para ejecutar una macro desde cualquier parte de Microsoft Access, en el menú Herramientas, haga clic en Macro y en Ejecutar macro. A continuación haga clic sobre una macro en el cuadro desplegable Nombre de la macro. en y después 93 94 CURSO DE MICROSOFT ACCESS Nota: Por lo general, sólo se ejecuta una macro directamente cuando desea probarla. Puede entonces agregar la macro a un formulario, informe o control, de forma que se ejecute como respuesta a un evento, o puede crear un comando de menú personalizado que ejecute la macro. Crear un botón de comando en un formulario que ejecuta una consulta o una macro 1. Abra un formulario en la vista Diseño del formulario. 2. Haga clic en la herramienta Asistentes para controles está ya presionada. en el Cuadro de herramientas si no 3. En el Cuadro de herramientas, haga clic en la herramienta Botón de comando . 4. En el formulario, haga clic en donde desee colocar el botón de comando. 5. En el primer cuadro de diálogo del asistente, haga clic en Varios en el cuadro de Categorías, y a continuación, en el cuadro Acciones haga clic en el tipo de botón que desee crear. 6. Siga las instrucciones de los cuadros de diálogo del asistente. En el último cuadro de diálogo, haga clic en Terminar para presentar el botón de comando en la vista Diseño. Si desea ver el procedimiento de evento que pone en funcionamiento al botón, haga clic en el botón Generar en la propiedad AlHacerClic del botón de comando. Crear un grupo de macros Si desea agrupar varias macros relacionadas en un punto, en lugar de seguirles la pista de forma separada, puede organizarlas como un grupo de macros. 1. En la ventana Base de datos, haga clic en Macros bajo Objetos. 2. Haga clic en el botón Nueva de la barra de herramientas de la ventana Base de datos. 3. Haga clic en Nombres de macros relieve. en la barra de herramientas, si no está ya en bajo 4. En la columna Nombre de macro, introduzca un nombre para la primera macro del grupo de macros. 5. Agregue las acciones que desee que la macro lleve a cabo. 6. Repita los pasos 4 y 5 para cada una de las macros que desee incluir en el grupo de macros. Nota: Cuando guarde el grupo de macros, el nombre que especifique será el nombre del grupo de macros. Este nombre se muestra en la lista de macros y de los grupos de macros en la ventana Base de datos. Cuando haga referencia a una macro en un grupo de macro, utilice esta sintaxis: nombregrupomacros.nombremacro Por ejemplo, Botones.Productos se refiere a la macro Productos en el grupo de macros Botones. En una lista de macros, tal como la lista de argumentos Nombre de Macros de la acción EjecutarMacro, Microsoft Access presenta la macro Productos como Botones.Productos. Administración de base de datos Hacer una copia de seguridad de una base de datos 94 95 CURSO DE MICROSOFT ACCESS 1. Cierre la base de datos. Si se encuentra en un entorno multiusuario, asegúrese de que todos los usuarios han cerrado la base de datos. 2. Por medio del Explorador de Windows, Mi PC, Microsoft Backup, el comando copy de MSDOS o de algún otro programa de copia de seguridad, copie el archivo de la base de datos (un archivo .MDB) al medio de almacenamiento de su elección. Notas: Si desea hacer una copia de seguridad en un disquete y el tamaño del archivo de su base de datos es mayor que la capacidad del mismo, no podrá utilizar el Explorador de Windows ni Mi PC para hacer la copia de seguridad; deberá utilizar Microsoft Backup u otro programa de copia de seguridad que le permita almacenar el archivo en más de un disquete. También es necesario que haga una copia de seguridad del archivo de información del grupo de trabajo. Si este archivo se daña o se pierde, no se podrá iniciar Microsoft Access hasta que se restablezca o se reconstruya dicho archivo. Puede hacer copias de seguridad de objetos de base de datos individuales creando una base de datos en blanco e importando los objetos que desee desde la base de datos de origen. No puede usar la instrucción FileCopy en una segunda instancia de Microsoft Access para hacer una copia de seguridad de una base de datos abierta en la primera instancia. Restaurar una base de datos desde una copia de seguridad Según el método empleado originalmente para hacer la copia de seguridad, utilice el Explorador de Windows, Mi PC, Microsoft Backup, los comandos copy o restore de MS-DOS u otro programa de copia de seguridad para copiar la base de datos almacenada a la carpeta que contiene su base de datos. Advertencia: Si la base de datos existente en su directorio y la copia de seguridad tienen el mismo nombre, al restaurar la copia de seguridad se puede reemplazar el archivo de base de datos existente. Si desea conservar dicho archivo, cámbiele el nombre antes de restaurar la copia de seguridad. Compactar una base de datos para desfragmentar el archivo y obtener espacio adicional en el disco Para asegurar un rendimiento óptimo, compacte las base de datos de Microsoft Access y los proyectos de Microsoft Access con frecuencia. Se ha mejorado la compactación y la reparación, y ahora están integradas en un único proceso que es más seguro y eficaz. Obtener más información sobre cómo compactar una base de datos o un proyecto de Access. Compactar la base de datos o proyecto de Access actual 1. Si se compacta una base de datos multiusuario (compartida) ubicada en un servidor o en una carpeta compartida, hay que asegurarse de que ningún otro usuario la tiene abierta. 2. En el menú Herramientas, seleccione Utilidades de la base de datos y, a continuación, haga clic en Compactar y reparar base de datos. 95 96 CURSO DE MICROSOFT ACCESS Nota: Puede detener el proceso de compactación presionando CTRL+INTER o ESC. Compactar una base de datos o un proyecto de Access que no está abierto 1. Cierre la base de datos de Microsoft Access o el proyecto de Microsoft Access en uso. 2. 3. 4. 5. Si se compacta una base de datos multiusuario (compartida) ubicada en un servidor o en una carpeta compartida, hay que asegurarse de que ningún otro usuario la tiene abierta. En el menú Herramientas, seleccione Utilidades de la base de datos y, a continuación, haga clic en Compactar y reparar base de datos. En el cuadro de diálogo Base de datos a compactar, especifique la base de datos de Access o proyecto de Access que desee compactar y, a continuación, haga clic en Compactar. En el cuadro de diálogo Compactar la base de datos en, especifique un nombre, unidad y carpeta para la base de datos de Access o proyecto de Access compactado. Haga clic en Guardar. Si utiliza el mismo nombre, unidad y carpeta, y la base de datos de Access o proyecto de Access se compacta con éxito, Microsoft Access reemplaza el archivo original por la versión compactada. Compactar automáticamente una base de datos o proyecto de Access al cerrarlos Microsoft Access puede compactar automáticamente una base de datos de Microsoft Access o proyecto de Microsoft Access cada vez que los cierre. 1. Abra la base de datos de Access o proyecto de Access que desee compactar automáticamente. 2. En el menú Herramientas, haga clic en Opciones. 3. Haga clic en la ficha General. 4. Active la casilla de verificación Compactar al cerrar. 96 97 CURSO DE MICROSOFT ACCESS Nota: La compactación no tiene lugar si cierra una base de datos multiusuario (compartida) mientras otro usuario la tiene abierta. Optimizar el rendimiento de la base de datos de Access mediante el Analizador de rendimiento Puede utilizar el Analizador de rendimiento para optimizar el rendimiento de una base de datos de Microsoft Access. También puede optimizar el rendimiento de un proyecto de Microsoft Access; sin embargo, el Analizador de rendimiento sólo está disponible en una base de datos de Access. 1. Abra la base de datos de Access que desea optimizar. 2. En el menú Herramientas, elija Analizar y, a continuación, haga clic en Rendimiento. 3. Haga clic en la ficha correspondiente al tipo de objeto de la base de datos que desea optimizar. Seleccione la ficha Todo para ver una lista de todos los objetos de la base de datos. 4. Seleccione los nombres de los objetos de la base de datos que desea optimizar. Haga clic en Seleccionar todo para seleccionar todos los objetos de la base de datos de la lista. 5. Repita los pasos 3 y 4 hasta que haya seleccionado todos los objetos que desea optimizar y, a continuación, elija Aceptar. El Analizador de rendimiento muestra tres tipos de resultados del análisis: Recomendación, Sugerencia e Idea. Al seleccionar un elemento de la lista Resultados del análisis, se muestra información acerca de la optimización propuesta en el cuadro Notas del análisis situado bajo la lista. Antes de llevarse a cabo las sugerencias de optimización, deben tenerse en cuenta ciertos inconvenientes potenciales que presentan. Para ver una descripción de los inconvenientes, seleccione una sugerencia en la lista y lea la información incluida en el cuadro Notas del análisis. Microsoft Access puede realizar las optimizaciones de tipo Recomendación y Sugerencia automáticamente, mientras que las de tipo Idea tienen que ser llevadas a cabo por el usuario. 6. Seleccione una o varias de las recomendaciones o sugerencias que desee llevar a cabo y, a continuación, elija Optimizar. El Analizador de rendimiento realizará las optimizaciones y las marcará como Resuelto. Continúe este proceso hasta que el Analizador de rendimiento haya finalizado todas las recomendaciones y sugerencias que desee que realice. Para llevar a cabo todas las recomendaciones y sugerencias, elija Seleccionar todo y, a continuación, elija Optimizar. Para llevar a cabo una optimización del tipo Idea, seleccione esa optimización y siga las instrucciones que se muestran en el cuadro Notas del análisis. Nota: El Analizador de rendimiento no proporciona sugerencias acerca de cómo mejorar el rendimiento del programa Microsoft Access propiamente dicho ni del sistema en el que se está ejecutando. Dividir una tabla en tablas relacionadas mediante el Asistente para analizar tablas Si la base de datos de Microsoft Access tiene una tabla que contiene información duplicada en uno o más campos, puede utilizar el Asistente para analizar tablas con el fin de dividir los datos en tablas relacionadas de forma que pueda almacenar los datos de un modo más eficiente. Este proceso se denomina normalización. 97 98 CURSO DE MICROSOFT ACCESS 1. En el menú Herramientas, elija Analizar y, a continuación, haga clic en Tabla. 2. Siga las instrucciones del Asistente para analizar tablas. Puede especificar las tablas que desea que cree el asistente o dejar que el asistente normalice la tabla automáticamente. Una vez definidas las nuevas tablas propuestas, el asistente le ayuda a conciliar los datos que la tabla original repetía de una forma incoherente. En el último paso, puede crear una consulta para ver toda la información de las tablas divididas en una sola hoja de datos similar a la tabla original. Nota: En un proyecto de Microsoft Access, las tablas residen en una base de datos de Microsoft SQL Server; por lo tanto, el Asistente para analizar tablas no está disponible. Características Avanzadas de Microsoft Access 2000 Programar con Visual Basic Se han efectuado numerosos cambios en el modelo de objeto de Visual Basic para Microsoft Access 2000 a fin de admitir las nuevas funciones mejoradas de la aplicación. Muchos objetos, propiedades y métodos han sido reemplazados. Para proporcionar compatibilidad con versiones anteriores, la mayoría de los componentes sustituidos en lugar de eliminarse se han ocultado. Esto significa que no aparecen en Examinador de objetos de forma predeterminada, pero el código antiguo que utiliza los componentes ocultos todavía funciona correctamente sin modificación. Sin embargo, al escribir nuevo código, se deberán utilizar los nuevos objetos, propiedades y métodos. Automatización con Microsoft Access Microsoft Access es un componente COM compatible con la Automatización, denominada anteriormente Automatización OLE. Microsoft Access admite la Automatización de dos formas. 98 99 CURSO DE MICROSOFT ACCESS Desde Microsoft Access, puede trabajar con los objetos suministrados por otro componente. Microsoft Access suministra también sus objetos a otros componentes COM. En Microsoft Access, puede establecer una referencia a la biblioteca de tipos de un componente para mejorar el rendimiento cuando trabaje con ese componente a través de Automatización. Microsoft Access incluye también el Examinador de objetos, una herramienta que le permite ver los objetos de la biblioteca de tipos de otro componente, así como sus métodos y propiedades. La biblioteca de tipos de Microsoft Access ofrece información acerca de los objetos Microsoft Access a otros componentes. Puede establecer una referencia a la biblioteca de tipos Microsoft Access desde un componente y ver sus objetos en el Examinador de objetos. Para trabajar con los objetos de Microsoft Access a través de Automatización, debe crear una instancia del objeto Application de Microsoft Access. Por ejemplo, suponga que desea mostrar datos de Microsoft Excel en un formulario o informe de Microsoft Access. Para ejecutar Microsoft Access desde Microsoft Excel, puede usar la palabra clave New para crear una instancia del objeto Application de Microsoft Access. También puede usar la función CreateObject para crear una nueva instancia del objeto Application de Microsoft Access, o puede usar la función GetObject para apuntar una variable de objeto a una instancia existente de Microsoft Access. Compruebe la documentación del componente para determinar la sintaxis con la que es compatible. Una vez iniciada una instancia de Microsoft Access, si desea controlar cualquier objeto de Microsoft Access, deberá abrir una base de datos (.MDB) o un proyecto (.ADP) en la ventana de Microsoft Access, utilizando el método OpenCurrentDatabase o el NewCurrentDatabase para una base de datos o utilizando el método OpenAccessProject o el NewAccessProject para un proyecto. Si sólo ha abierto Microsoft Access como una forma de usar los objetos de acceso a datos proporcionados por Microsoft DAO, entonces no es necesario que abra una base de datos en la ventana Microsoft Access. Puede usar la propiedad DBEngine del objeto Application de Microsoft Access para tener acceso a los objetos de la biblioteca de objetos DAO 3.6 de Microsoft durante una operación de Automatización. Utilización de objetos de datos ActiveX en Microsoft Access 2000 Microsoft Access 2000 proporciona tres nuevos modelos de objetos para utilizarlos en la creación, mantenimiento y administración de bases de datos de Access 2000 y de sus datos relacionados, mediante la utilización de Visual Basic. Objetos de datos ActiveX de Microsoft (Microsoft ActiveX Data Objects, ADO) ADO contiene los objetos necesarios para crear, mantener y eliminar registros en un origen de datos dado. Microsoft ADO Ext. for DDL and Security (ADOX) ADOX proporciona los objetos del lenguaje de definición de datos (Data Definition Language, DDL) necesarios para crear una nueva base de datos y los objetos que contiene además de los objetos necesarios para administrar la seguridad. Microsoft Jet and Replication Objects 2.1 Library (JRO) Puesto que los objetos ADO fueron diseñados para trabajar con muchas bases de datos además de bases de datos Microsoft Jet, las funciones específicas de Jet se incluyeron como parte de la biblioteca JRO. 99 100 CURSO DE MICROSOFT ACCESS La Automatización La automatización (antes llamada automatización OLE) es una de las características del Component Object Model (COM), una tecnología estándar en la industria usada por las aplicaciones para revelar sus objetos a las herramientas de desarrollo, lenguajes de macros y otras aplicaciones que sean compatibles con la automatización. Por ejemplo, una aplicación de hojas de cálculo puede revelar una hoja de cálculo, un diagrama, celda o rango de celdas, cada una como un tipo diferente de objeto. Un procesador de textos puede revelar objetos como una aplicación, un documento, un párrafo, una frase, un marcador o una selección. Cuando una aplicación es compatible con la automatización, Visual Basic tiene acceso a los objetos revelados por la aplicación. Utilice Visual Basic para manipular esos objetos mediante la aplicación de métodos sobre el objeto o leyendo y dando valor a las propiedades del objeto. Soluciones para el acceso a datos locales La Situación Se desea una interfaz de programación de aplicaciones (API) coherente y sencilla que permita a las aplicaciones tener acceso y modificar una amplia variedad de orígenes de datos. Un origen de datos puede ser tan simple como un archivo de texto, tan complejo como un conjunto de distintos tipos de bases de datos o algo que no se haya inventado todavía. Es más, la API no debería presuponer los medios para tener acceso y tratar el origen de datos. Aunque éstos sean sus requisitos específicos, el origen de datos típico es una base de datos relacional compatible con el estándar Conectividad abierta de bases de datos (ODBC, Open Database Connectivity) y se trata mediante comandos escritos en el Lenguaje de consulta estructurado (SQL, Structured Query Language). La solución general que ofrece Microsoft a este problema es OLE DB, un conjunto de interfaces del Modelo de objetos componentes (COM, Component Object Model) que proporciona un acceso uniforme a los datos almacenados en orígenes de información diversos. Sin embargo, dado que la interfaz de programación de aplicaciones de OLE DB está diseñada para proporcionar una funcionalidad óptima en una amplia variedad de aplicaciones, no cumple el requisito de la simplicidad. Se necesita una API que actúe como puente entre la aplicación y OLE DB. ActiveX Data Objects (ADO) es ese puente. La Solución ADO define un modelo de programación: la secuencia de actividades necesarias para tener acceso y actualizar un origen de datos. El modelo de programación resume la funcionalidad completa de ADO. El modelo de programación sugiere un modelo de objetos: el conjunto de objetos que corresponde e implementa el modelo de programación. Los objetos poseen métodos, que realizan algunas operaciones en los datos, y propiedades, que representan algunos atributos de los datos o controlan el comportamiento de algunos métodos de objetos. Asociados con estos objetos están los eventos, que son notificaciones de que algunas operaciones han sucedido o están a punto de suceder. 100 101 CURSO DE MICROSOFT ACCESS Modelo básico de programación ADO ADO proporciona los medios para realizar la siguiente secuencia de acciones: 1. Conectarse a un origen de datos. Opcionalmente, puede asegurarse de que todos los cambios del origen de datos se realicen correctamente o no se realice ninguno. 2. Especificar un comando para tener acceso al origen de datos, opcionalmente con parámetros variables o con el mejor rendimiento. 3. Ejecutar el comando. 4. Si el comando hace que los datos se devuelvan en forma de filas en una tabla, almacenar las filas en una caché que se pueda examinar, tratar o cambiar con facilidad. 5. Si corresponde, actualizar el origen de datos con los cambios de las filas de la caché. 6. Proporcionar un medio general para detectar los errores (normalmente, como resultado de establecer una conexión o ejecutar un comando). Normalmente se emplearán todos estos pasos en el modelo de programación. Sin embargo, es interesante advertir que ADO es lo suficientemente flexible para que se pueda realizar un trabajo útil simplemente con una parte del modelo. Por ejemplo, se podrían almacenar los datos a partir de un archivo directamente en una caché de filas y después utilizar los recursos de ADO exclusivamente para examinar los datos. Introducción a los objetos de acceso a datos DAO Los objetos de acceso a datos (DAO) le habilitan para utilizar un lenguaje de programación para tener acceso y manipular datos en bases de datos locales o remotas y administrar bases de datos, los objetos y la estructura. Modelos de objeto El DAO admite dos entornos diferentes de bases de datos o “espacios de trabajo.” Los espacios de trabajo Microsoft Jet permiten tener acceso a datos en bases de datos Microsoft Jet, orígenes de datos Microsoft conectados a ODBC y orígenes de datos ISAM instalable en otros formatos, como Paradox o Lotus 1-2-3. Los espacios de trabajo ODBCDirect permiten tener acceso servidores de bases de datos mediante ODBC, sin cargar el motor de base de datos Microsoft Jet. Utilice el espacio de trabajo Microsoft Jet cuando abra una base de datos Microsoft Jet (archivo .mdb) u otra base de datos de escritorio ISAM o cuando necesite aprovecharse de la características particulares de Microsoft Jet, como la posibilidad de unir datos de diferentes formatos de base de datos. El espacio de trabajo ODBCDirect proporciona una alternativa cuando sólo necesita ejecutar consultas o procedimientos almacenados en un servidor, como Microsoft SQL Server o cuando la aplicación cliente necesita las capacidades específicas de ODBC, como las actualizaciones por lotes o la ejecución de una consulta asíncrona. 101 102 CURSO DE MICROSOFT ACCESS Uso del espacio de trabajo Microsoft Jet Abrir una base de datos Para abrir una base de dato, simplemente abra un objeto Database existente o cree uno nuevo. Este objeto puede representar una base de datos Microsoft Jet (archivo .mdb), una base de datos ISAM (por ejemplo, Paradox) o una base de datos ODBC conectada mediante el motor de base de datos Microsoft Jet (también conocido como una “base de datos ODBC conectada a Microsoft Jet”). Lenguaje de definición de datos (DDL) Puede utilizar variables de objeto y otras características DDL para modificar la estructura de la base de datos. Manipulación de datos El DAO proporciona un excelente conjunto de herramientas de manipulación de datos. Puede crear un objeto Recordset para consultar convenientemente una base de datos y manipular el conjunto de registros resultante. El método OpenRecordset acepta una cadena SQL o un nombre de un objeto QueryDef (consulta almacenada) como un argumento de origen de datos, o se puede abrir desde un objeto QueryDef o un objeto TableDef, utilizando este objeto como el origen de datos. El objeto Recordset resultante presenta un conjunto extremadamente rico de propiedades y métodos con el que examinar y modificar datos. El objeto Recordset está disponible en cuatro tipos diferentes: Table, Dynaset, Forward-only y Snapshot. Transacciones Todos los objetos Database abiertos a través de un objeto Workspace comparten un alcance de transacción común. Esto quiere decir que cuando utiliza el método BeginTrans en un objeto Workspace, se aplica a todas las bases de datos abiertas con ese objeto Workspace. Del mismo modo, cuando utiliza el método CommitTrans a través del objeto Workspace, se aplica a todas las bases de datos abiertas en el objeto Workspace. Réplicas Puede utilizar la réplica de base de datos para crear y mantener réplicas de una base de datos modelo de Microsoft Jet utilizando el método Synchronize para actualizar periódicamente todas o parte de las réplicas o para copiar datos nuevos de una réplica a otra. También pude restringir la actualización a sólo los registros seleccionados, utilizando la propiedad ReplicaFilter y después sincronizar esos registros con el método PopulatePartial. Seguridad Puede restringir el acceso a una o más bases de datos .mdb o a las tablas utilizando los valores de seguridad establecidos y administrados por el motor de base de datos Microsoft Jet. En el código, puede establecer los objetos Group y User para definir el alcance y nivel de permisos disponibles a usuarios individuales en una base objeto a objeto. Por ejemplo, puede establecer permisos para un usuario específico para proporcionar acceso de sólo lectura a una tabla y acceso total a otra. 102 103 CURSO DE MICROSOFT ACCESS Uso del Modelo de objetos ODBCDirect Conexión a una base de datos Un objeto Connection es parecido a un objeto Database. De hecho, un objeto Connection y un objeto Database representan referencias diferentes al mismo objeto y propiedades en cada uno de los dos tipos de objeto que le permiten obtener una referencia al otro objeto correspondiente, que simplifica la tarea de convertir las aplicaciones cliente ODBC que utilizan Microsoft Jet para utilizar en vez de ello ODBCDirect. Utilice el método OpenConnection para conectarse a un origen de datos ODBC. El objeto Connection resultante contiene información acerca de la conexión, como el nombre del servidor y el nombre del origen de datos. Consultas Aunque el DAO no admite consulta almacenadas en un espacio de trabajo ODBCDirect, se puede crear una consulta compilada como un objeto QueryDef y se puede utilizar para ejecutar consultas de acción y también para ejecutar procedimientos almacenados en el servidor. La propiedad Prepare le permite decidir si crear un procedimiento almacenado temporal y privado en el servidor de un QueryDef antes de ejecutar la consulta actual. Las consultas de parámetros también se pueden transferir al servidor, utilizando objetos Parameter en el QueryDef. La propiedad Direction le permite especificar un Parameter como entrada, salida o ambos o aceptar un valor de un procedimiento almacenado. Manipulación de datos Crear un objeto Recordset es una forma oportuna de consultar una base de datos y manipular el conjunto de registros resultante. El método OpenRecordset acepta una cadena SQL o un objeto QueryDef (consulta almacenada) como un argumento de origen de datos. El objeto Recordset resultante presenta un conjunto extremadamente rico de propiedades y métodos con el que examinar y modificar datos. El objeto Recordset está disponible en cuatro tipos diferentes: Table, Dynaset, Forward-only y Snapshot - que corresponden a los tipos de cursores ODBC: Dynamic, Keyset, Forward-only y Static. Está disponible una biblioteca de cursor de actualización por lotes para aplicaciones cliente que necesitan trabajar con un cursor sin mantener bloqueos en el servidor o sin emitir las peticiones de actualización de un registro al mismo tiempo. En cambio, el cliente almacena la información de actualización de muchos registros en un búfer local (o “por lotes”) y después envía una actualización por lotes. Ejecución de método asícrono Los métodos Execute, MoveLast, OpenConnection y OpenRecordset presentan la opción dbRunAsync. Esto permite a la aplicación cliente realizar otras tareas (como, por ejemplo, cargar formularios) mientras se está ejecutando el método. Puede comprobar la propiedad StillExecuting para ver si la tarea se completó y para terminar una tarea asíncrona con el método Cancel. Novedades de seguridad, mantenimiento y conversión de una base de datos 1. Proteger su base de datos de Access con el Asistente para seguridad por usuarios El Asistente para seguridad por usuarios ahora es más fácil de utilizar y es el método más adecuado para definir la seguridad para los usuarios en una base de datos de Microsoft Access para los esquemas de seguridad más habituales. 103 104 CURSO DE MICROSOFT ACCESS 2. Proteger su código mediante una contraseña de Visual Basic para Aplicaciones Los módulos y los módulos que se encuentran tras los formularios e informes ahora están protegidos mediante una contraseña de Visual Basic para Aplicaciones (VBA) que se puede crear en el Editor de Visual Basic; ya no están protegidos por la seguridad para usuarios. 3. Usar la utilidad de compactación mejorada Compactar bases de datos de Microsoft Access y proyectos de Microsoft Access con una utilidad mejorada que combina la compactación y la reparación en un único proceso, y resulta más seguro y eficaz. 4. Compactar automáticamente Seleccione Compactar al cerrar para compactar automáticamente una base de datos de Microsoft Access o un proyecto de Microsoft Access al cerrarlo. 5. Convertir una base de datos al formato de Microsoft Access 97 Convertir una base de datos de Access 2000 al formato de archivo de Access 97. Novedades del trabajo con otras aplicaciones Microsoft Access 2000 ofrece características nuevas para trabajar con otros productos. 1. Trabajar con Microsoft SQL Server Crear un proyecto de Microsoft Access que sea fácil de conectar a una base de datos de Microsoft SQL, o utilizar el Asistente para bases de datos de Microsoft SQL Server para crear rápidamente una base de datos de SQL Server y un proyecto de Access a la vez. Trabajar con un proyecto de Access es similar a trabajar con una base de datos de Microsoft Access, el proceso de crear formularios, informes, páginas de acceso a datos, macros y módulos es el mismo. Una vez que conecte con una base de datos de SQL Server, puede ver, crear, modificar y eliminar tablas, vistas, procedimientos almacenados y diagramas de base de datos mediante las herramientas de diseño de Microsoft SQL Server. 2. Crear una nueva base de datos de Access a partir de datos en un formato de archivo diferente Simplemente abra el archivo que tiene un formato diferente, como por ejemplo formato de texto, de hoja de cálculo, dBASE o Paradox, en Access; Microsoft Access crea automáticamente una base de datos de Access y vincula el archivo. 3. Importar o vincular datos de Microsoft Outlook o Microsoft Exchange Usar el Asistente de Exchange/Outlook para importar o vincular datos de Microsoft Outlook y Microsoft Exchange Server. Por ejemplo, podría querer vincular con la carpeta de contactos de Microsoft Outlook y, a continuación, crear cartas de formularios y etiquetas postales combinando los datos con el Asistente para combinar de correspondencia de Microsoft Word. Novedades sobre cómo trabajar en Internet Microsoft Access proporciona nuevas funciones que se han diseñado para facilitar el uso de Internet. Se necesita un explorador Web como, por ejemplo, Microsoft Internet Explorer y un módem, una conexión de intranet u otra conexión de red para tener acceso a Internet y aprovechar las ventajas que ofrecen algunas de estas nuevas funciones. 1. Crear páginas de acceso a datos Cree páginas Web que se puedan utilizar para agregar, modificar, ver o manipular datos actuales en una base de datos de Microsoft Access o de Microsoft SQL Server. 2. Colaborar a través de una intranet o de Internet Utilice NetMeeting para colaborar con otros usuarios en una base de datos de Microsoft Access o en un proyecto de Microsoft Access. 104 105 CURSO DE MICROSOFT ACCESS 3. Asignar un hipervínculo a un botón de barra de herramientas o a un comando de menú Asigne un hipervínculo a un botón de la barra de herramientas o a un comando de menú para facilitar el acceso a una ubicación en su equipo, una red, una intranet o Internet. Exportar datos y objetos de base de datos a otra base de datos o formato de archivo La exportación es una forma de enviar datos y objetos de base de datos a otra base de datos, hoja de cálculo o formato de archivo para que otra base de datos, aplicación o programa puedan utilizar dichos datos y objetos. La exportación es un proceso similar al de copiar y pegar en lo relativo a funciones. En general, se utiliza el comando Exportar del menú Archivo para exportar datos u objetos de base de datos, pero se pueden utilizar otros comandos como los que se describen más adelante. Se pueden exportar datos a una diversidad de bases de datos, programas y formatos de archivo compatibles. Importar y vincular datos e importar objetos de base de datos Microsoft Access proporciona dos opciones para utilizar datos de un origen de datos externo. Permite: 1. Importar los datos a una nueva tabla de Microsoft Access, que es un método para convertir datos de un formato diferente y copiarlos a Microsoft Access. También se pueden importar objetos de base de datos a la base de datos de Microsoft Access o al proyecto de Microsoft Access en uso. 2. Vincular los datos, que es un método para conectar a datos de otra aplicación sin importarlos, de modo que se pueden ver y modificar los datos tanto en la aplicación original como en una base de datos de Access. En versiones anteriores de Microsoft Access, este proceso recibía el nombre de “adjuntar”. Se pueden importar o vincular datos de una gran variedad de bases de datos, programas y formatos de archivo compatibles. Importar datos La operación de importar datos crea una copia de la información en una nueva tablas de la base de datos de Access o del proyecto de Access en uso. El archivo o la tabla de origen no experimentan modificaciones en este proceso. Cuando se importan datos, se pueden agregar datos a tablas existentes (salvo cuando se importan archivos de texto u hojas de cálculo). Sin embargo, una vez importada una tabla, en una base de datos de Access se puede realizar una consulta de datos anexados, o en un proyecto de Access se puede utilizar un procedimiento almacenado, para agregar los datos de la tabla a otra tabla. También se pueden importar objetos de base de datos que no sean tablas, como por ejemplo formularios o informes, desde otra base de datos u otro proyecto de Access. Vincular datos En una base de datos de Access, la operación de vincular datos permite leer y, en la mayoría de los casos, actualizar datos en el origen de datos externo sin necesidad de realizar una importación. El formato del origen de datos externo no experimenta modificaciones, por lo que se puede continuar utilizando el archivo con el programa que lo creó originalmente, y también se pueden agregar, eliminar o modificar datos utilizando Microsoft Access. Una tabla se puede vincular únicamente en una base de datos de Access, pero no en un proyecto de Access. 105 106 CURSO DE MICROSOFT ACCESS Microsoft Access utiliza diferentes iconos para representar tablas vinculadas y tablas almacenadas en la base de datos actual. Si se elimina el icono correspondiente a una tabla vinculada, se eliminará el vínculo a la tabla, pero no la propia tabla externa. Proyecto de Microsoft Access Un proyecto de Microsoft Access (.ADP) es un nuevo tipo de archivo de Access que proporciona un acceso eficaz en modo nativo a una base de datos de Microsoft SQL Server mediante la arquitectura de componentes OLE DB. Con un proyecto de Access se puede crear una aplicación cliente / servidor con la misma facilidad que una aplicación servidor de archivos. Esta aplicación cliente / servidor puede ser una solución tradicional basada en formularios e informes, una solución basada en Web mediante el uso de páginas de acceso a datos o una combinación de ambas. Un proyecto de Access recibe el nombre de proyecto porque contiene únicamente objetos de base de datos basados en códigos o en HTML: formularios, informes, páginas de acceso a datos, macros y módulos. Estos son los objetos de base de datos que se utilizan para crear una aplicación. A diferencia de una base de datos de Microsoft Access, un proyecto de Access no contiene datos ni objetos basados en definición de datos: tablas, vistas, diagramas de base de datos o procedimientos almacenados (que también pueden contener código de aplicación). En su lugar, estos objetos se almacenan en la base de datos de SQL Server. Para crear la aplicación y tener acceso a los datos, es necesario conectar el proyecto de Access a la base de datos de SQL Server utilizando el comando Nueva del menú Archivo o el Asistente para bases de datos. Obtener información sobre crear un proyecto de Access. Trabajar con un proyecto de Access El trabajo con un proyecto de Access es muy parecido al trabajo con una base de datos de Access. El proceso de crear formularios, informes, páginas de acceso a datos, macros y módulos es prácticamente igual al que se utiliza para crear una base de datos de Access. Después de conectarse a una base de datos de SQL Server, se pueden ver, crear, modificar y eliminar tablas, vistas, procedimientos almacenados y diagramas de base de datos mediante la utilización de las Herramientas de diseño de Microsoft SQL Server, que son las mismas que se utilizan en Microsoft Visual Interdev y Microsoft Visual Basic. La interfaz de usuario para trabajar con objetos de estas bases de datos es diferente de la de los objetos equivalentes en una base de datos de Access; no obstante, es igual de sencilla para el usuario. Un proyecto de Access también contiene muchos de los asistentes que se utilizan en una base de datos de Access como, por ejemplo, el Asistente para formularios, el Asistente para informes y el Asistente para páginas, que se pueden utilizar para crear de forma rápida un prototipo o una aplicación sencilla. 106 107 CURSO DE MICROSOFT ACCESS Especificaciones generales acerca de la base de datos Microsoft Access Atributo Máximo Tamaño de archivo de una base de datos de 2 gigabytes. Sin embargo, debido a que Microsoft Access (.mdb) la base de datos puede incluir tablas de otros archivos, su tamaño total sólo está limitado por la capacidad de almacenamiento disponible. Número de objetos en una base de datos 32.768 Módulos (incluyendo formularios e informes 1.000 con la propiedad TieneUnMóduloAsociado (HasModule) establecida a True) Número de caracteres en un nombre de objeto 64 Número de caracteres en una contraseña 14 Número de caracteres en un nombre de usuario 20 o de grupo Número de usuarios que pueden tener acceso a 255 la vez Especificaciones generales de un proyecto de Microsoft Access Atributo Máximo Número de objetos en un proyecto de 32,768 Microsoft Access (.ADP) Módulos (incluidos formularios e informes con 1,000 la propiedad TieneUnMóduloAsociado (HasModule) establecida a True) Número de caracteres en un nombre de 64 objeto Especificaciones técnicas de una base de datos de Microsoft SQL Server Las especificaciones técnicas de Microsoft SQL Server aparecen en la documentación de SQL Server. Estas especificaciones incluyen los tamaños y valores máximos de objetos SQL Server, los valores mínimos y máximos de las opciones de configuración, y la utilización de memoria para varios objetos SQL Server. Obtener información sobre documentación de SQL Server. Especificaciones acerca de la tabla de base de datos de Microsoft Access Atributo Máximo Número de caracteres en un nombre de tabla 64 Número de caracteres en un nombre de campo 64 107 108 CURSO DE MICROSOFT ACCESS Número de campos en una tabla 255 Número de tablas abiertas 2.048. El número real puede ser menor debido a tablas que abre Microsoft Access internamente. Tamaño de tabla 1 gigabyte Número de caracteres en un campo de texto 255 Número de caracteres en un campo memo 65.535 cuando se introducen datos desde la interfaz de usuario; 1 gigabyte cuando se introducen datos mediante código. Tamaño de un campo objeto OLE 1 gigabyte Número de índices en una tabla 32 Número de campos en un índice 10 Número de caracteres en un mensaje de 255 validación Número de caracteres en una regla de validación 2.048 Número de caracteres en una descripción de 255 tabla o campo Número de caracteres en un registro (sin incluir 2.000 los campos memo y objeto OLE) Número de caracteres en la configuración de una 255 propiedad Especificaciones acerca de la consulta de base de datos de Microsoft Access Atributo Máximo Número de relaciones forzadas 32 por tabla menos el número de índices que hay en la tabla para campos o combinaciones de campos que no forman parte de las relaciones Número de tablas en una consulta 32 Número de campos en un conjunto de 255 registros Tamaño de un conjunto de registros 1 gigabyte Límite para ordenar 255 caracteres en uno o más campos Número de niveles de consultas anidadas 50 Número de caracteres en una celda de la 1.024 cuadrícula de diseño de consulta Número de caracteres para un parámetro en 255 una consulta de parámetros 108 109 CURSO DE MICROSOFT ACCESS Número de AND en una cláusula WHERE o 40 HAVING Número de caracteres en una instrucción aproximadamente 64.000 SQL Especificaciones de macros Atributo Máximo Número de acciones en una macro 999 Número de caracteres en una condición 255 Número de caracteres en un comentario 255 Número de caracteres en un argumento de acción 255 109