Fundamentos de Microsoft Access 365
Microsoft Access 365 es el sistema gestor de bases de datos relacionales de escritorio incluido en la suite Microsoft 365 (anteriormente Office 365). Permite crear, gestionar y consultar bases de datos sin necesidad de conocimientos avanzados de programación, siendo una herramienta habitual en la Administración Pública española para la gestión de información estructurada.
1. Concepto de base de datos relacional
Una base de datos es un conjunto organizado de información almacenada de forma estructurada para facilitar su acceso, gestión y actualización. Las bases de datos relacionales organizan los datos en tablas interconectadas mediante relaciones.
Elementos fundamentales
Tabla: Estructura bidimensional formada por filas y columnas que almacena datos sobre un mismo tema o entidad. Cada tabla tiene un nombre único dentro de la base de datos.
Registro (fila): Cada fila de la tabla representa una instancia concreta de la entidad. Por ejemplo, en una tabla de empleados, cada registro corresponde a un empleado específico.
Campo (columna): Cada columna representa un atributo o propiedad de la entidad. Por ejemplo, nombre, apellidos, DNI, fecha de nacimiento. Cada campo tiene un nombre y un tipo de dato definido.
Valor: La intersección de un registro y un campo contiene un valor concreto.
Clave principal (clave primaria): Campo o conjunto de campos que identifica de forma unívoca cada registro de la tabla. No puede haber dos registros con el mismo valor en la clave principal, y no puede estar vacía (no puede ser nula).
Clave externa (clave foránea): Campo en una tabla que hace referencia a la clave principal de otra tabla, estableciendo así una relación entre ambas.
Ventajas del modelo relacional
- Eliminación de redundancias: Los datos se almacenan una sola vez y se referencian desde otras tablas.
- Integridad de los datos: Las reglas de integridad referencial garantizan la coherencia entre tablas relacionadas.
- Flexibilidad en las consultas: Se pueden combinar datos de varias tablas mediante consultas.
- Escalabilidad: La estructura tabular permite añadir nuevos campos y tablas sin afectar a los existentes.
2. Diferencias entre Access y Excel
Access y Excel son dos herramientas de Microsoft con propósitos distintos. La elección entre una y otra depende del tipo de información y del uso previsto.
| Característica | Microsoft Access | Microsoft Excel |
|---|---|---|
| Tipo de herramienta | Base de datos relacional | Hoja de cálculo |
| Organización de datos | Tablas relacionadas entre sí | Hojas de cálculo independientes |
| Volumen de datos | Hasta 2 GB por archivo .accdb | Hasta 1.048.576 filas por hoja |
| Datos relacionados | Excelente (relaciones nativas) | Limitado (requiere fórmulas complejas) |
| Consultas complejas | SQL y QBE nativo | Tablas dinámicas y fórmulas |
| Formularios de entrada | Sí, diseñables | No de forma nativa |
| Informes imprimibles | Sí, con diseño avanzado | Limitado |
| Multiusuario | Sí (varios usuarios a la vez) | Limitado (co-autoría básica) |
| Cálculos matemáticos | Limitados | Excelente (función principal) |
| Gráficos estadísticos | Básico | Avanzado |
| Automatización | Macros y VBA | Macros VBA |
| Curva de aprendizaje | Mayor | Menor |
Cuándo usar Access
- Cuando se gestionan datos estructurados con múltiples categorías interrelacionadas.
- Cuando varios usuarios necesitan acceder y modificar datos simultáneamente.
- Cuando se necesitan formularios personalizados para la introducción de datos.
- Cuando se requieren informes formateados para imprimir.
- Cuando el volumen de datos supera la capacidad cómoda de Excel (más de decenas de miles de registros con múltiples relaciones).
- Para gestionar datos de clientes, expedientes, inventarios, personal, etc.
Cuándo usar Excel
- Cuando se necesitan cálculos matemáticos, estadísticos o financieros complejos.
- Para análisis de datos con tablas dinámicas y gráficos.
- Cuando los datos son relativamente simples y no tienen múltiples relaciones.
- Para presupuestos, hojas de control, listas simples.
- Cuando la audiencia principal son usuarios no técnicos que ya conocen Excel.
3. Objetos de Access
Access organiza su contenido en seis tipos de objetos, todos accesibles desde el Panel de navegación situado a la izquierda de la pantalla.
3.1 Tablas
Son el objeto fundamental y el único que almacena datos reales. Todos los demás objetos se basan en las tablas. Cada base de datos debe tener al menos una tabla.
- Almacenan los datos en filas (registros) y columnas (campos).
- Tienen dos vistas principales: Vista hoja de datos y Vista diseño.
- La estructura (campos, tipos, propiedades) se define en Vista diseño.
- Los datos se introducen en Vista hoja de datos.
3.2 Consultas
Permiten extraer, filtrar, ordenar y manipular datos de una o varias tablas. No almacenan datos propios (salvo excepciones puntuales), sino que muestran datos de las tablas en tiempo real.
Tipos de consultas:
- Consulta de selección: Recupera y muestra datos que cumplen determinados criterios. Es el tipo más habitual.
- Consulta de parámetros: Solicita al usuario un valor al ejecutarse (por ejemplo, pedir el mes sobre el que informar).
- Consulta de tabla de referencias cruzadas: Presenta datos resumidos con encabezados de fila y columna, similar a una tabla dinámica de Excel.
- Consulta de acción: Modifica los datos de las tablas. Incluye cuatro subtipos:
- Consulta de creación de tabla: Crea una nueva tabla con los resultados.
- Consulta de datos anexados: Agrega registros a una tabla existente.
- Consulta de actualización: Modifica valores en campos de registros existentes.
- Consulta de eliminación: Borra registros que cumplen determinados criterios.
- Consulta SQL específica: Unión, paso a través, definición de datos.
3.3 Formularios
Proporcionan una interfaz gráfica para ver, introducir y editar datos de las tablas. Facilitan la entrada de datos de forma más amigable que la vista hoja de datos.
- Pueden mostrar un registro a la vez o varios registros simultáneamente.
- Permiten incluir controles: cuadros de texto, listas desplegables, casillas de verificación, botones, imágenes, subformularios, etc.
- Los subformularios permiten mostrar datos relacionados de otra tabla dentro del mismo formulario.
- Tienen tres vistas: Vista formulario (uso), Vista presentación (diseño con datos) y Vista diseño (diseño completo).
3.4 Informes
Permiten presentar los datos de tablas o consultas en un formato diseñado para su impresión o exportación. Ofrecen mayor control sobre el diseño que los formularios.
- Permiten agrupar y ordenar datos, añadir totales, subtotales y encabezados de grupo.
- Incluyen secciones: Encabezado del informe, Encabezado de página, Encabezado de grupo, Detalle, Pie de grupo, Pie de página, Pie del informe.
- Se pueden exportar a PDF, Word, Excel, texto, etc.
- El Asistente para informes guía el proceso de creación paso a paso.
3.5 Macros
Son secuencias de acciones predefinidas que se pueden ejecutar de forma automática para automatizar tareas repetitivas sin necesidad de programar en VBA.
- Se crean con el Generador de macros, una interfaz visual que muestra acciones disponibles.
- Permiten abrir formularios, ejecutar consultas, mostrar mensajes, validar datos, etc.
- Las macros pueden ejecutarse al hacer clic en un botón, al abrir un formulario, al cerrar la base de datos, etc.
- Las macros de datos se adjuntan a tablas y se ejecutan cuando ocurren eventos en la tabla (insertar, actualizar, eliminar).
- A diferencia de las macros de VBA, las macros estándar de Access no requieren habilitar el contenido de macros de Office en todos los entornos.
3.6 Módulos
Contienen código Visual Basic para Aplicaciones (VBA) para automatización avanzada que supera las capacidades de las macros estándar.
- Módulos estándar: Contienen procedimientos (funciones y subrutinas) de uso general, disponibles en toda la base de datos.
- Módulos de clase: Asociados a formularios o informes específicos, contienen el código de eventos de esos objetos.
- Permiten crear funciones personalizadas que pueden usarse en consultas, formularios e informes.
- Requieren conocimientos de programación en VBA.
4. Interfaz de Microsoft Access 365
4.1 Cinta de opciones
La cinta de opciones es la barra superior con fichas (pestañas) y grupos de comandos. Las fichas principales son:
Ficha Archivo (Backstage): No es una ficha convencional. Abre la vista Backstage donde se gestionan operaciones a nivel de archivo:
- Información (propiedades, cifrado, compactar)
- Nuevo (crear base de datos en blanco o desde plantilla)
- Abrir (bases de datos recientes o examinar)
- Guardar / Guardar como (guardar la base de datos o exportar a otros formatos)
- Imprimir
- Cerrar
- Opciones de Access (configuración general del programa)
Ficha Inicio: Comandos de uso frecuente según el objeto activo:
- Portapapeles (cortar, copiar, pegar)
- Ordenar y filtrar (ordenar ascendente/descendente, filtros)
- Registros (actualizar, nuevo, guardar, eliminar, totales)
- Buscar (buscar, reemplazar, ir a registro)
- Formato de texto (negrita, cursiva, color de fuente, alineación)
Ficha Crear: Para crear nuevos objetos:
- Tablas (tabla nueva, diseño de tabla, listas de SharePoint)
- Consultas (Asistente para consultas, Diseño de consulta)
- Formularios (Formulario, Diseño de formulario, Formulario en blanco, Asistente para formularios, Navegación, otros formularios)
- Informes (Informe, Diseño de informe, Informe en blanco, Asistente para informes, Etiquetas)
- Macros y código (Macro, Módulo, Módulo de clase, Visual Basic)
Ficha Datos externos: Para importar y exportar datos:
- Importar y vincular (Excel, Access, ODBC, texto, XML, más fuentes)
- Exportar (Excel, texto, XML, PDF/XPS, correo electrónico, Word, más destinos)
- Recopilar datos (correo electrónico con formularios HTML o InfoPath)
- Administrar respuestas de datos
Ficha Herramientas de base de datos: Herramientas de administración y análisis:
- Herramientas (compactar y reparar, Visual Basic, ejecutar macro)
- Relaciones (Relaciones, Dependencias de objetos)
- Analizar (Analizar tabla, Analizar rendimiento, Documentar base de datos)
- Mover datos (SharePoint, Administrador de tablas vinculadas)
- Complementos
- SQL Server (si está disponible el Asistente de migración)
Fichas contextuales: Aparecen solo cuando se selecciona un tipo de objeto específico:
- Herramientas de tabla (Vista hoja de datos, Vista diseño): Campos, Tabla
- Herramientas de diseño de consultas
- Herramientas de diseño de formularios
- Herramientas de diseño de informes
4.2 Panel de navegación
Situado en el lado izquierdo de la pantalla, muestra todos los objetos de la base de datos (tablas, consultas, formularios, informes, macros, módulos).
- Se puede mostrar u ocultar con la tecla F11 o haciendo clic en la flecha doble (<<) de su borde derecho.
- Permite agrupar objetos de diferentes maneras mediante el menú desplegable en la parte superior del panel:
- Todos los objetos de Access: Vista predeterminada, agrupa por tipo.
- Tipo de objeto: Similar a la anterior.
- Tablas y vistas relacionadas: Agrupa cada tabla con los formularios, informes y consultas que la usan.
- Fecha de modificación / Fecha de creación
- Grupos personalizados: El usuario puede crear categorías propias.
- Desde el panel se pueden abrir, diseñar, renombrar, copiar y eliminar objetos.
- El botón derecho sobre un objeto muestra el menú contextual con opciones disponibles.
4.3 Area de trabajo y pestañas de objetos abiertos
- Los objetos abiertos aparecen como pestañas en el área de trabajo central (configuración predeterminada en Access 365).
- Alternativamente se pueden mostrar como ventanas superpuestas, configurable en Opciones de Access > Base de datos actual.
- La barra de desplazamiento de registros, en la parte inferior de las tablas y formularios, muestra el número de registro actual, el total de registros y botones para navegar (primero, anterior, siguiente, último, nuevo registro).
4.4 Barra de estado
En la parte inferior de la pantalla muestra:
- El modo actual de la vista (Vista diseño, Vista hoja de datos, etc.).
- Mensajes de estado y descripción del campo seleccionado.
- Botones de cambio rápido de vista (iconos en el extremo derecho).
- Indicadores de bloqueo de teclas (Bloq Mayús, Bloq Num).
5. Crear una base de datos
5.1 Base de datos en blanco
Al abrir Access se muestra la pantalla de inicio donde se puede:
- Seleccionar Base de datos en blanco.
- Escribir el nombre del archivo en el cuadro correspondiente.
- Elegir la ubicación haciendo clic en el icono de carpeta.
- Hacer clic en Crear.
Access crea automáticamente una nueva tabla vacía (Tabla1) lista para comenzar a añadir datos.
5.2 Base de datos desde plantilla
Access incluye plantillas prediseñadas para casos de uso comunes (contactos, activos, estudiantes, eventos, etc.):
- En la pantalla de inicio, examinar las plantillas disponibles o buscar plantillas en línea.
- Seleccionar la plantilla deseada.
- Especificar el nombre y la ubicación.
- Hacer clic en Crear.
La plantilla crea la estructura de tablas, consultas, formularios e informes ya preparada.
5.3 Formatos de archivo
| Extensión | Descripción | Compatibilidad |
|---|---|---|
| .accdb | Formato estándar Access 2007, 2010, 2013, 2016, 2019, 365 | Access 2007 y posterior |
| .mdb | Formato antiguo Access 97, 2000, 2002, 2003 | Access 97-2003 |
| .accde | Versión compilada y bloqueada de .accdb (sin código VBA editable) | Solo lectura/ejecución del código |
| .mde | Versión compilada y bloqueada de .mdb | Solo lectura/ejecución del código |
| .accdt | Plantilla de base de datos Access | Para crear nuevas bases de datos |
| .accdr | Base de datos de Access en modo de solo ejecución | Abre en modo restringido |
| .laccdb | Archivo de bloqueo temporal (.ldb para .mdb) | Creado automáticamente al abrir, se elimina al cerrar |
El formato .accdb (Access 2007+) admite funciones no disponibles en .mdb:
- Tipos de datos Datos adjuntos y Calculado.
- Campos multivaluados.
- Macros de datos.
- Mayor seguridad y cifrado mejorado.
- Integración con SharePoint y servicios web.
6. Tablas — Vista hoja de datos
La Vista hoja de datos muestra los datos de la tabla en formato de cuadrícula (similar a Excel):
- Añadir campos: Se puede hacer clic en la columna Haga clic para agregar del extremo derecho y seleccionar el tipo de dato. Access infiere el tipo automáticamente si se introduce un valor.
- Renombrar campos: Doble clic sobre el encabezado de la columna.
- Reordenar campos: Arrastrar el encabezado de columna a la posición deseada.
- Ocultar/mostrar columnas: Botón derecho sobre el encabezado > Ocultar campos / Mostrar campos.
- Inmovilizar columnas: Mantiene columnas visibles al desplazar horizontalmente (botón derecho > Inmovilizar campos).
- Filtros rápidos: Hacer clic en la flecha desplegable de cada columna permite filtrar y ordenar datos.
- Buscar: Ctrl+B abre el cuadro Buscar y reemplazar.
- Navegar por registros: Con los botones de la barra de navegación o con las teclas Tab (campo siguiente), Mayús+Tab (campo anterior), Ctrl+Inicio (primer registro), Ctrl+Fin (último registro).
7. Tablas — Vista diseño
La Vista diseño es donde se define la estructura de la tabla: qué campos contiene, qué tipo de dato almacena cada campo y qué propiedades tienen.
La pantalla se divide en dos partes:
Parte superior (rejilla de campos):
- Nombre del campo: Hasta 64 caracteres. Puede incluir espacios y caracteres especiales, aunque es recomendable evitarlos para facilitar el uso en consultas y expresiones. No puede empezar por espacio.
- Tipo de datos: Desplegable con todos los tipos disponibles.
- Descripción: Texto opcional que se muestra en la barra de estado cuando el campo está seleccionado en un formulario. Ayuda al usuario a saber qué debe introducir.
Parte inferior (propiedades del campo): Muestra dos pestañas con las propiedades del campo seleccionado en la parte superior.
- Pestaña General: Propiedades comunes a la mayoría de tipos de campo.
- Pestaña Búsqueda: Define cómo se muestra el campo en formularios y hojas de datos (cuadro de texto, cuadro de lista, cuadro combinado, casilla de verificación, etc.).
8. Tipos de datos en Access
8.1 Texto corto (Short Text)
- Almacena texto alfanumérico: letras, números, símbolos.
- Longitud máxima: 255 caracteres.
- Uso típico: nombres, apellidos, direcciones, códigos, DNI, teléfonos.
- En versiones anteriores se llamaba Texto (Access 2003 y anteriores).
- Propiedad Tamaño del campo determina el número máximo de caracteres (valor predeterminado: 255).
8.2 Texto largo (Long Text)
- Almacena grandes cantidades de texto con o sin formato enriquecido.
- Capacidad: hasta aproximadamente 1 GB de texto por campo.
- Admite formato de texto enriquecido (negrita, cursiva, colores) si se activa la propiedad Formato de texto.
- Uso típico: observaciones, notas, descripciones largas, historial.
- En versiones anteriores se llamaba Memo.
- No se puede indexar directamente.
- No se puede usar como clave principal.
8.3 Número (Number)
Almacena valores numéricos para cálculos matemáticos. La propiedad Tamaño del campo determina el subtipo:
| Subtipo | Rango | Tamaño en disco | Decimales |
|---|---|---|---|
| Byte | 0 a 255 | 1 byte | Ninguno |
| Entero | -32.768 a 32.767 | 2 bytes | Ninguno |
| Entero largo | -2.147.483.648 a 2.147.483.647 | 4 bytes | Ninguno |
| Simple | -3,4 x 10^38 a 3,4 x 10^38 | 4 bytes | 7 |
| Doble | -1,797 x 10^308 a 1,797 x 10^308 | 8 bytes | 15 |
| Id. de réplica (GUID) | Identificador único global | 16 bytes | N/A |
| Decimal | -10^28 a 10^28 | 12 bytes | 28 |
- El subtipo Entero largo es el más habitual para números enteros de uso general.
- Simple y Doble son de punto flotante; pueden tener errores de redondeo.
- Decimal es de precisión fija, recomendado para valores monetarios cuando no se usa el tipo Moneda.
8.4 Fecha y hora (Date/Time)
- Almacena fechas y horas entre el 1 de enero de 100 y el 31 de diciembre de 9999.
- Ocupa 8 bytes.
- Internamente se almacena como un número de punto flotante doble: la parte entera representa la fecha y la parte decimal la hora.
- Access 365 también ofrece el subtipo Fecha y hora extendidas (mayor precisión y rango más amplio).
8.5 Moneda (Currency)
- Diseñado para valores monetarios, evita errores de redondeo comunes en los tipos de punto flotante.
- Precisión de hasta 4 decimales a la derecha del separador decimal y 15 dígitos a la izquierda.
- Ocupa 8 bytes.
- Equivale al tipo Decimal con 4 lugares decimales pero con mayor rendimiento.
8.6 Autonumérico (AutoNumber)
- Genera automáticamente un valor único para cada nuevo registro.
- No puede ser modificado manualmente por el usuario.
- Dos subtipos principales (propiedad Tamaño del campo):
- Entero largo: Genera números enteros secuenciales (1, 2, 3...) o aleatorios.
- Id. de réplica (GUID): Genera identificadores únicos globales de 16 bytes, útiles en bases de datos replicadas.
- Habitualmente se usa como clave principal por garantizar unicidad.
- Si se elimina un registro, el número autonumérico de ese registro no se reutiliza.
- Para reiniciar la numeración es necesario compactar la base de datos (si la tabla está vacía) o manipular el campo mediante código.
8.7 Sí/No (Yes/No)
- Almacena solo dos valores posibles: verdadero o falso.
- Ocupa 1 bit (internamente se almacena como -1 para Verdadero y 0 para Falso).
- La propiedad Formato permite mostrar los valores de tres formas:
- Sí/No
- Verdadero/Falso
- Activado/Desactivado
- En formularios se muestra habitualmente como una casilla de verificación.
8.8 Objeto OLE (OLE Object)
- Permite almacenar objetos creados en otras aplicaciones compatibles con OLE (Object Linking and Embedding), como imágenes, hojas de cálculo Excel, documentos Word, sonidos, etc.
- Almacenamiento muy ineficiente: los archivos se guardan incrustados en la base de datos, lo que aumenta enormemente su tamaño.
- No indexable. No recomendado para bases de datos modernas; se prefiere el tipo Datos adjuntos o almacenar rutas de archivo como texto.
- Capacidad teórica de hasta 1 GB.
8.9 Hipervínculo (Hyperlink)
- Almacena direcciones web (URL), rutas UNC o direcciones de correo electrónico.
- Se puede hacer clic en el valor para abrir el recurso vinculado.
- Internamente se almacena como texto con un formato especial: texto para mostrar, dirección y subdirección separados por el símbolo #.
- Longitud máxima: 2.048 caracteres para cada parte.
8.10 Datos adjuntos (Attachment)
- Permite adjuntar uno o varios archivos a cada registro (imágenes, documentos PDF, hojas de cálculo, etc.).
- Es el equivalente a adjuntos de correo electrónico en la base de datos.
- Los archivos se comprimen automáticamente si el formato lo permite.
- Límite de 2 GB por base de datos .accdb para todos los adjuntos.
- No disponible en formato .mdb.
- Se muestra como un icono de clip en la hoja de datos; al hacer doble clic se abre el cuadro de diálogo de datos adjuntos.
- No puede usarse como clave principal ni indexarse.
8.11 Calculado (Calculated)
- El valor del campo se calcula automáticamente mediante una expresión basada en otros campos de la misma tabla.
- Equivale a una columna calculada; el valor se calcula y almacena en cada registro.
- No se puede editar manualmente.
- Ejemplo: un campo "PrecioTotal" con la expresión [Cantidad] * [PrecioUnitario].
- No disponible en formato .mdb.
8.12 Asistente para búsquedas (Lookup Wizard)
- No es un tipo de dato en sí mismo, sino un asistente que configura un campo para mostrar valores de otra tabla, consulta o lista de valores fijos.
- El campo resultante es de tipo Texto corto o Número (dependiendo del origen).
- Permite seleccionar el valor deseado desde un cuadro combinado o una lista desplegable en lugar de escribirlo manualmente.
- Mejora la integridad y facilita la entrada de datos.
- Tipos de origen:
- Lista de valores: Se especifican los valores directamente (por ejemplo: "Madrid"; "Barcelona"; "Valencia").
- Tabla o consulta: Los valores se obtienen de otra tabla o consulta existente.
9. Propiedades de campo
Las propiedades de campo se configuran en la pestaña General de la parte inferior de la Vista diseño de tabla.
9.1 Tamaño del campo
- Para Texto corto: número máximo de caracteres (1 a 255; predeterminado 255).
- Para Número: subtipo (Byte, Entero, Entero largo, Simple, Doble, Decimal, Id. de réplica).
9.2 Formato
Define cómo se muestran los datos (no afecta al valor almacenado).
Para Número y Moneda:
| Formato | Descripción | Ejemplo |
|---|---|---|
| General | Sin formato específico | 3456,789 |
| Moneda | Con símbolo de moneda y dos decimales | 3.456,79 E |
| Euro | Con símbolo euro | 3.456,79 E |
| Fijo | Número fijo de decimales | 3456,79 |
| Estándar | Con separador de miles y decimales | 3.456,79 |
| Porcentaje | Multiplica por 100 y añade % | 34,57% |
| Científico | Notación científica | 3,46E+03 |
Para Fecha y hora:
| Formato | Patron | Ejemplo |
|---|---|---|
| Fecha general | d/mm/yyyy h:nn:ss | 6/03/2026 15:30:00 |
| Fecha larga | dddd, d de mmmm de yyyy | viernes, 6 de marzo de 2026 |
| Fecha mediana | dd-mmm-yy | 06-mar-26 |
| Fecha corta | dd/mm/yyyy | 06/03/2026 |
| Hora larga | h:nn:ss | 15:30:00 |
| Hora mediana | h:nn am/pm | 3:30 pm |
| Hora corta | h:nn | 15:30 |
Para Sí/No:
- Sí/No
- Verdadero/Falso
- Activado/Desactivado
9.3 Lugares decimales
- Para campos numéricos y de moneda.
- Determina cuántos decimales se muestran (no cuántos se almacenan).
- Valores: Auto, 0, 1, 2, ..., 15.
- Auto muestra los decimales según el formato seleccionado.
9.4 Mascara de entrada
Define el patrón de formato para la introducción de datos, mostrando caracteres guía y limitando qué se puede escribir en cada posición.
Caracteres de máscara más usados:
| Carácter | Descripción |
|---|---|
| 0 | Dígito obligatorio (0-9) |
| 9 | Dígito opcional o espacio |
| # | Dígito, espacio, + o - |
| L | Letra obligatoria (A-Z, a-z) |
| ? | Letra opcional |
| A | Letra o dígito obligatorio |
| a | Letra o dígito opcional |
| & | Cualquier carácter obligatorio |
| C | Cualquier carácter opcional |
| . , : ; - / | Separadores (según configuración regional) |
| < | Convierte a minúsculas lo que sigue |
| > | Convierte a mayúsculas lo que sigue |
| ! | Rellena de derecha a izquierda |
Ejemplo de máscara para DNI español: 00000000>L (8 dígitos obligatorios + 1 letra en mayúsculas).
El Asistente para máscaras de entrada ofrece máscaras predefinidas para formatos habituales (teléfono, código postal, fecha, etc.).
9.5 Título
- Texto alternativo que se usa como etiqueta del campo en formularios e informes en lugar del nombre del campo.
- Útil cuando el nombre del campo no es suficientemente descriptivo o contiene guiones bajos.
- Ejemplo: campo "FechaNacimiento" con título "Fecha de nacimiento".
9.6 Valor predeterminado
- Valor que se introduce automáticamente en el campo cuando se crea un nuevo registro.
- El usuario puede cambiar este valor.
- Puede ser un valor fijo ("Madrid") o una expresión (Date() para la fecha actual, Now() para fecha y hora actual).
9.7 Regla de validación
- Expresión que determina qué valores son aceptables para el campo.
- Si el valor introducido no cumple la expresión, Access rechaza el valor y muestra el Texto de validación.
- Ejemplos:
-
=0 (solo valores positivos o cero)
-
=18 Y <=65 (solo valores entre 18 y 65)
- Como "A*" O Como "B*" (solo textos que empiecen por A o B)
-
#01/01/2000# (solo fechas posteriores al 1 de enero de 2000)
-
- La regla de validación también puede aplicarse a nivel de tabla (no solo de campo), permitiendo comparar valores de diferentes campos.
9.8 Texto de validación
- Mensaje de error que se muestra cuando el valor introducido no cumple la regla de validación.
- Debe ser claro e informativo para el usuario.
9.9 Requerido
- Sí: El campo debe tener un valor; no puede estar vacío (nulo).
- No: El campo puede dejarse vacío (valor predeterminado).
- La clave principal siempre es requerida implícitamente.
9.10 Permitir longitud cero
- Solo aplicable a campos de tipo Texto corto y Texto largo.
- Sí: Permite guardar una cadena vacía (""), que es diferente de un valor nulo.
- No: Una cadena vacía se trata igual que un valor nulo.
- Diferencia entre nulo y cadena vacía: nulo significa "dato desconocido"; cadena vacía significa "dato conocido y es vacío".
9.11 Indexado
Define si Access crea un índice para el campo:
- No: Sin índice.
- Sí (con duplicados): Crea un índice que permite valores repetidos.
- Sí (sin duplicados): Crea un índice que exige valores únicos en el campo (equivalente a una restricción de unicidad).
La clave principal tiene automáticamente un índice sin duplicados.
9.12 Compresión Unicode
- Aplicable a campos de texto.
- Sí (predeterminado): Los caracteres cuyo punto de código Unicode está entre 0 y 127 se almacenan en 1 byte en lugar de 2, ahorrando espacio.
10. Clave principal
10.1 Importancia de la clave principal
La clave principal es el campo (o conjunto de campos) que identifica de forma unívoca cada registro de la tabla. Tiene dos funciones críticas:
- Garantía de unicidad: No pueden existir dos registros con el mismo valor de clave principal. Access rechaza automáticamente cualquier intento de introducir un duplicado.
- Fundamento de las relaciones: La clave principal de una tabla se usa como referencia en la clave externa de otras tablas, estableciendo las relaciones entre ellas.
Características de la clave principal:
- No puede contener valores nulos.
- No puede tener valores duplicados.
- Debe ser estable (su valor no debería cambiar a lo largo del tiempo).
- Debería ser lo más pequeña posible para eficiencia.
10.2 Tipos de clave principal
Autonumérico: Access genera automáticamente un número entero secuencial o un GUID para cada nuevo registro. Es el tipo recomendado porque cumple todos los requisitos sin intervención del usuario.
Campo con valor único: Un campo de la tabla cuyos valores ya son únicos de forma natural (por ejemplo, el DNI en una tabla de personas, el ISBN en una tabla de libros). Requiere vigilar que no se introduzcan duplicados.
Clave compuesta: Combinación de dos o más campos que juntos identifican unívocamente cada registro, aunque ninguno de ellos por sí solo sea único. Se usa cuando no existe un campo natural único ni se quiere usar un autonumérico. Se define seleccionando varios campos en vista diseño.
10.3 Definir y quitar la clave principal
En Vista diseño de tabla:
- Definir: Seleccionar el campo (o varios campos para clave compuesta, con Ctrl+clic) y hacer clic en el botón Clave principal de la ficha Diseño, o hacer clic derecho > Clave principal.
- El campo seleccionado como clave principal muestra un icono de llave a su izquierda.
- Quitar: Seleccionar el campo con el icono de llave y volver a hacer clic en el botón Clave principal.
Si se guarda una tabla sin haber definido ninguna clave principal, Access pregunta si desea crear una automáticamente (añadirá un campo Autonumérico).
11. Relaciones
11.1 Ventana Relaciones
Se accede desde Herramientas de base de datos > Relaciones. Muestra una representación visual de las tablas de la base de datos y las relaciones entre ellas.
Operaciones en la ventana Relaciones:
- Agregar tablas: Botón Mostrar tabla (o clic derecho en área vacía > Mostrar tabla).
- Crear relación: Arrastrar el campo de clave principal de una tabla al campo de clave externa de la otra tabla.
- Editar relación: Doble clic sobre la línea de relación.
- Eliminar relación: Seleccionar la línea de relación y pulsar Supr.
- Ocultar tabla: Clic derecho sobre la tabla > Ocultar tabla.
11.2 Tipos de relaciones
Relación uno a uno (1:1):
- Un registro de la tabla A corresponde a, como máximo, un registro de la tabla B, y viceversa.
- Poco frecuente; suele indicar que las dos tablas podrían fusionarse en una sola.
- Uso habitual: separar datos sensibles o poco usados en una tabla aparte para mayor seguridad o rendimiento.
- Se identifica en la ventana Relaciones con el indicador 1 en ambos extremos de la línea.
Relacion uno a varios (1:N) — la más común:
- Un registro de la tabla del lado "uno" puede estar relacionado con muchos registros de la tabla del lado "varios".
- Ejemplo clásico: un cliente puede tener varios pedidos; cada pedido pertenece a un solo cliente.
- La clave principal de la tabla del lado "uno" aparece como clave externa en la tabla del lado "varios".
- Se identifica con 1 en el extremo de la tabla "uno" e infinito en el extremo de la tabla "varios".
Relacion varios a varios (N:M):
- Varios registros de la tabla A pueden relacionarse con varios registros de la tabla B.
- No puede implementarse directamente en Access. Se resuelve mediante una tabla intermedia de unión (o tabla de cruce) que tiene dos relaciones uno a varios: una con cada una de las tablas originales.
- La tabla de unión contiene al menos las claves externas de ambas tablas.
- Ejemplo: un estudiante puede matricularse en varias asignaturas; cada asignatura puede tener varios estudiantes matriculados — tabla de unión Matrículas con los campos IdEstudiante e IdAsignatura.
11.3 Integridad referencial
Al crear una relación se puede activar la casilla Exigir integridad referencial. Si está activada:
- No se puede introducir un valor en el campo de clave externa que no exista en el campo de clave principal de la tabla relacionada.
- No se puede eliminar un registro de la tabla principal si tiene registros relacionados en la tabla secundaria.
- No se puede cambiar el valor de la clave principal de la tabla principal si tiene registros relacionados en la tabla secundaria.
Access mostrará un mensaje de error si se intenta violar la integridad referencial.
Actualizar en cascada: Si está activado, cuando se modifica el valor de la clave principal en la tabla principal, Access actualiza automáticamente todos los valores de clave externa correspondientes en la tabla secundaria.
Eliminar en cascada: Si está activado, cuando se elimina un registro de la tabla principal, Access elimina automáticamente todos los registros relacionados en la tabla secundaria.
Las opciones en cascada solo están disponibles cuando se exige integridad referencial. Deben usarse con precaución, especialmente la eliminación en cascada, ya que puede provocar pérdidas masivas de datos de forma accidental.
11.4 Tipo de combinación (join)
Al editar una relación, el botón Tipo de combinación permite configurar cómo se combinarán los registros de ambas tablas en consultas:
- Combinación interna (INNER JOIN): Solo incluye los registros donde el campo de combinación coincide en ambas tablas. Es el tipo predeterminado.
- Combinación externa izquierda (LEFT JOIN): Incluye todos los registros de la tabla izquierda, aunque no tengan correspondencia en la tabla derecha. Los campos de la tabla derecha aparecerán nulos para los registros sin correspondencia.
- Combinación externa derecha (RIGHT JOIN): Incluye todos los registros de la tabla derecha, aunque no tengan correspondencia en la tabla izquierda.
12. Índices
Un índice es una estructura de datos auxiliar que Access mantiene para acelerar la búsqueda y ordenación de registros por un campo determinado.
12.1 Ventajas de los índices
- Aceleran considerablemente las búsquedas y ordenaciones por el campo indexado.
- Aceleran la ejecución de consultas que filtran u ordenan por campos indexados.
- Los campos de clave externa en relaciones suelen beneficiarse de un índice.
12.2 Desventajas de los índices
- Aumentan ligeramente el tamaño de la base de datos.
- Ralentizan las operaciones de inserción, actualización y eliminación (porque Access debe mantener el índice actualizado).
- No conviene crear índices en campos que se modifican frecuentemente o que tienen muchos valores repetidos.
12.3 Tipos de índices
- Índice principal: Creado automáticamente sobre la clave principal; siempre sin duplicados.
- Índice sin duplicados: Exige que todos los valores del campo sean únicos.
- Índice con duplicados: Permite valores repetidos; solo mejora la velocidad sin imponer restricción de unicidad.
12.4 Ver y gestionar índices
En Vista diseño de tabla: ficha Diseño > Índices. Se abre la ventana Índices, que muestra todos los índices de la tabla con sus campos y propiedades (Primario, Único, Omitir nulos).
Índice compuesto: Un índice que incluye más de un campo. Se crea en la ventana Índices añadiendo varias filas con el mismo nombre de índice. Útil cuando las búsquedas se realizan habitualmente por combinación de varios campos.
13. Mantenimiento de la base de datos
13.1 Compactar y reparar
Con el uso continuado, el archivo de base de datos puede aumentar de tamaño aunque se eliminen registros y objetos (el espacio liberado no se reutiliza automáticamente). La operación Compactar y reparar realiza dos funciones:
- Compactar: Reorganiza el archivo eliminando el espacio fragmentado y no utilizado, reduciendo el tamaño del archivo.
- Reparar: Intenta corregir daños en el archivo causados por cierres incorrectos del programa u otros problemas.
Acceso:
- Archivo > Información > Compactar y reparar base de datos.
- Herramientas de base de datos > Compactar y reparar base de datos.
Se puede configurar para que Access compacte automáticamente al cerrar la base de datos: Archivo > Opciones > Base de datos actual > Compactar al cerrar.
La compactación también reinicia el contador autonumérico al valor máximo actual más uno, si la tabla está vacía.
13.2 Cifrado con contraseña
Access permite cifrar una base de datos y protegerla con contraseña para impedir el acceso no autorizado.
Proceso:
- Abrir la base de datos en modo exclusivo: Archivo > Abrir > examinar el archivo > seleccionarlo > hacer clic en la flecha del botón Abrir > Abrir en modo exclusivo.
- Archivo > Información > Cifrar con contraseña.
- Introducir y confirmar la contraseña.
El cifrado usa el algoritmo AES de 128 bits (en Access 2007+ con formato .accdb).
Para quitar la contraseña se sigue el mismo proceso pero eligiendo Descifrar base de datos.
Sin la contraseña no es posible abrir el archivo cifrado. Si se olvida la contraseña, no hay forma de recuperar los datos.
14. Resumen de conceptos clave para test
| Concepto | Dato clave |
|---|---|
| Texto corto | Máximo 255 caracteres |
| Texto largo | Hasta aproximadamente 1 GB (antes llamado Memo) |
| Autonumérico | Genera valores únicos automáticamente; no puede editarse |
| Sí/No | Verdadero = -1, Falso = 0; 1 bit |
| Datos adjuntos | Solo disponible en .accdb; admite varios archivos por registro |
| Calculado | Expresión basada en otros campos; no se edita manualmente |
| Clave principal | Identifica unívocamente cada registro; sin nulos ni duplicados |
| Relación 1:N | La más común; clave externa en el lado "varios" |
| Integridad referencial | Impide registros huérfanos en la tabla relacionada |
| Actualizar en cascada | Propaga cambios de clave principal a tabla relacionada |
| Eliminar en cascada | Borra registros relacionados al eliminar en tabla principal |
| Panel de navegación | F11 para mostrar/ocultar; muestra todos los objetos |
| Compactar y reparar | Reduce tamaño del archivo y corrige daños |
| Cifrado | Modo exclusivo previo; AES 128 bits; contraseña irrecuperable |
| Formato .accdb | Access 2007+; admite datos adjuntos, campos calculados |
| Formato .mdb | Access 97-2003; compatible con versiones antiguas |
| Formato .accde | Compilado sin código VBA editable |
| Consulta de selección | Solo recupera datos, no los modifica |
| Consulta de acción | Modifica datos (actualización, eliminación, creación, anexados) |
| Índice sin duplicados | Exige unicidad en el campo (además del de clave principal) |
| Regla de validación | Expresión que limita valores aceptables en un campo |
| Mascara de entrada | Patrón de formato para la introducción de datos |
| Valor predeterminado | Se introduce automáticamente en nuevos registros |
| Requerido: Sí | El campo no puede estar vacío (nulo) |
| Texto de validación | Mensaje de error mostrado al violar la regla de validación |
| Combinación interna | Solo registros con coincidencia en ambas tablas |
| Combinación izquierda | Todos los registros de la tabla izquierda aunque no haya coincidencia |
| Título del campo | Etiqueta alternativa mostrada en formularios e informes |
| Subformulario | Formulario dentro de otro formulario para datos relacionados |
| Secciones del informe | Encabezado/pie del informe, de página y de grupo, y Detalle |
| Número - Byte | Rango 0 a 255; 1 byte |
| Número - Entero | Rango -32.768 a 32.767; 2 bytes |
| Número - Entero largo | Rango -2.147.483.648 a 2.147.483.647; 4 bytes |
| Moneda | 4 decimales; 8 bytes; evita errores de redondeo |
| Objeto OLE | Almacena objetos de otras aplicaciones; poco eficiente; hasta 1 GB |
| Hipervínculo | URL, ruta UNC o email; máx. 2.048 caracteres por parte |
| Relación 1:1 | Poco frecuente; puede indicar tablas fusionables |
| Relación N:M | Requiere tabla intermedia de unión |
| Vista Backstage | Ficha Archivo; operaciones a nivel de archivo |
| Ficha Crear | Para crear tablas, consultas, formularios, informes, macros |
| Compresión Unicode | Caracteres 0-127 se almacenan en 1 byte en lugar de 2 |
| Indice compuesto | Índice formado por más de un campo |
| Nombre del campo | Máximo 64 caracteres; no puede empezar por espacio |
15. Motor de base de datos: ACE y formato de archivo
15.1 Microsoft Access Database Engine (ACE)
El motor de base de datos es el componente interno que gestiona el almacenamiento, la recuperación y la manipulación de los datos. Microsoft Access 365 utiliza el motor ACE (Access Connectivity Engine), también denominado Microsoft Access Database Engine.
El motor ACE es el sucesor del motor Jet (Joint Engine Technology), que fue el motor de base de datos de las versiones de Access anteriores a 2007 (Access 97, 2000, 2002 y 2003). A partir de Access 2007 se introdujo el motor ACE junto con el nuevo formato de archivo .accdb. El motor ACE mantiene compatibilidad con los archivos .mdb del motor Jet.
El motor ACE se encarga de:
- Gestionar el almacenamiento físico de los datos en el archivo .accdb o .mdb.
- Procesar las consultas SQL.
- Controlar la concurrencia de múltiples usuarios.
- Garantizar la integridad de los datos y las transacciones.
15.2 Extensiones de archivo: .accdb y .mdb
| Extensión | Motor | Introducida en | Notas |
|---|---|---|---|
| .accdb | ACE | Access 2007 | Formato predeterminado desde Access 2007 hasta Access 365 |
| .mdb | Jet | Access 97 | Formato heredado; compatible con Access 97-2003 |
El formato .accdb es el formato nativo de Access 365 y todas las versiones modernas desde 2007. Ofrece ventajas sobre .mdb:
- Soporte para el tipo de datos Datos adjuntos.
- Soporte para el tipo de datos Calculado.
- Campos multivaluados.
- Seguimiento del historial de cambios en campos Texto largo.
- Mayor seguridad mediante cifrado con la API de Windows.
- Integración mejorada con SharePoint.
El formato .mdb no admite estas características. Access 365 puede abrir y trabajar con archivos .mdb (modo de compatibilidad), pero para aprovechar todas las funcionalidades es necesario convertir el archivo a .accdb.
Identificación práctica: Un archivo .accdb abierto en Access 365 muestra en la barra de título el nombre del archivo sin indicador especial. Si se trabaja con un archivo .mdb, Access puede advertir de las limitaciones del formato.
16. Especificaciones y límites técnicos de Access
Access impone una serie de límites técnicos que es importante conocer para el diseño de bases de datos y para los tests de oposición.
16.1 Límites de la base de datos
| Especificación | Límite |
|---|---|
| Tamaño máximo del archivo de base de datos | 2 gigabytes (menos el espacio para objetos del sistema) |
| Número máximo de objetos en una base de datos | 32.768 |
| Número máximo de usuarios simultáneos | 255 |
| Tablas abiertas simultáneamente (Access 365) | 4.096 |
| Módulos (incluidos módulos de clase) | 1.000 |
Nota: Si la base de datos supera los 2 GB, se puede resolver vinculando tablas distribuidas en varios archivos .accdb, cada uno con su propio límite de 2 GB.
16.2 Límites de tablas y campos
| Especificación | Límite |
|---|---|
| Número máximo de campos por tabla | 255 |
| Longitud máxima del nombre de un campo | 64 caracteres |
| Longitud máxima del nombre de una tabla | 64 caracteres |
| Tamaño máximo de un campo Texto corto | 255 caracteres |
| Tamaño máximo de un campo Texto largo (interfaz de usuario) | 65.535 caracteres |
| Tamaño máximo de un campo Texto largo (programación) | 1 gigabyte |
| Tamaño máximo de un campo Objeto OLE | 1 gigabyte |
| Índices por tabla | 32 |
| Campos en un índice o clave principal | 10 |
El límite de 255 campos por tabla es uno de los más preguntados en tests. Si una tabla necesita más campos, es señal de que el diseño debe revisarse (posiblemente dividiendo la información en tablas relacionadas).
16.3 Tamaños exactos de los tipos de datos numéricos
Los subtipos del tipo Número se distinguen por su rango y precisión decimal:
| Subtipo | Rango | Decimales exactos | Tamaño en disco |
|---|---|---|---|
| Byte | 0 a 255 | 0 | 1 byte |
| Entero | -32.768 a 32.767 | 0 | 2 bytes |
| Entero largo | -2.147.483.648 a 2.147.483.647 | 0 | 4 bytes |
| Simple | -3,4 × 10^38 a 3,4 × 10^38 | Hasta 7 decimales | 4 bytes |
| Doble | -1,797 × 10^308 a 1,797 × 10^308 | Hasta 15 decimales | 8 bytes |
| Decimal | -10^28 a 10^28 | Hasta 28 decimales | 12 bytes |
| Id. de réplica (GUID) | Identificador único global | — | 16 bytes |
Puntos clave para test:
- Byte: solo almacena valores entre 0 y 255 (sin negativos).
- Entero: rango de -32.768 a 32.767 (2 bytes, sin decimales).
- Entero largo: rango aproximado de ±2.100 millones (4 bytes, sin decimales). Es el subtipo predeterminado para AutoNumeración.
- Simple: hasta 7 decimales significativos (punto flotante de precisión simple).
- Doble: hasta 15 decimales significativos (punto flotante de doble precisión).
- Decimal: hasta 28 decimales (precisión fija, evita errores de redondeo).
- Moneda (tipo independiente): 15 dígitos a la izquierda del separador decimal y 4 decimales fijos.
16.4 Tamaño del campo Sí/No
El tipo de datos Sí/No ocupa 1 bit de almacenamiento. Internamente Access codifica los valores como:
- Sí (verdadero): -1
- No (falso): 0
Esta codificación (−1 para verdadero en lugar de 1) es propia de Access y puede generar confusión. En formularios el campo Sí/No se representa habitualmente como una casilla de verificación.
17. Caracteres prohibidos en nombres de campos y objetos
Access impone restricciones sobre los caracteres que se pueden utilizar en los nombres de campos, tablas y demás objetos de la base de datos.
17.1 Caracteres que invalidan el nombre del campo
El propio motor de Access rechaza los siguientes caracteres en nombres de campos y genera el mensaje de error «El nombre del campo no es válido»:
| Carácter | Símbolo | Motivo |
|---|---|---|
| Corchete de apertura | [ | Conflicto con la sintaxis de expresiones SQL |
| Corchete de cierre | ] | Conflicto con la sintaxis de expresiones SQL |
| Signo de exclamación | ! | Operador de referencia de Access |
| Punto | . | Separador de objeto en expresiones (tabla.campo) |
| Acento grave | ` | Conflicto con la sintaxis de expresiones |
| Espacio inicial | (espacio al principio) | El nombre no puede comenzar por espacio |
| Caracteres no imprimibles | (retorno de carro, tabulador, etc.) | No permitidos |
Regla mnemotécnica: Los caracteres [, ], !, . (punto) y el acento grave son los más preguntados en tests porque tienen significado especial en el lenguaje de expresiones de Access.
17.2 Caracteres que causan problemas en consultas y expresiones
Aunque Access puede aceptarlos en el nombre del campo, los siguientes caracteres generan errores al usar el campo en consultas, expresiones o al exportar datos:
| Carácter | Símbolo | Problema típico |
|---|---|---|
| Espacio | | Errores de sintaxis en consultas |
| Comillas dobles | " | Conflicto con delimitadores de cadena |
| Apóstrofo | ' | Conflicto con delimitadores de cadena |
| Almohadilla | # | Interpretado como delimitador de fecha |
| Signo de porcentaje | % | Problemas en formularios ASP/web |
| Signo de interrogación | ? | Operador comodín en consultas |
| Asterisco | * | Operador comodín en consultas |
| Arroba | @ | Conflicto en expresiones |
| Tilde | ~ | Problemas de sintaxis |
| Punto y coma | ; | Separador de parámetros |
17.3 Convenciones de nomenclatura recomendadas
Microsoft recomienda las siguientes prácticas para nombres de campos y objetos:
- Usar solo letras (A-Z, a-z), dígitos (0-9) y el guión bajo (
_). - No comenzar el nombre por un espacio ni por un dígito.
- Evitar palabras reservadas de Access y SQL (como
Date,Name,Order,Table). - Usar nombres descriptivos sin espacios: por ejemplo,
FechaNacimientoen lugar deFecha de Nacimiento. - La longitud máxima del nombre de un campo es de 64 caracteres.
18. Propiedades de tabla
Además de las propiedades individuales de cada campo, Access permite definir propiedades a nivel de tabla completa. Se accede a ellas desde Vista diseño mediante el botón Hoja de propiedades (ficha Diseño de tabla, grupo Mostrar u ocultar).
18.1 Principales propiedades de tabla
| Propiedad | Descripción |
|---|---|
| Descripción | Texto explicativo sobre el propósito de la tabla; se muestra en el Panel de navegación |
| Vista predeterminada | Determina qué vista se abre al hacer doble clic en la tabla: Hoja de datos, Tabla dinámica o Gráfico dinámico |
| Regla de validación | Expresión que debe cumplirse a nivel de registro completo (puede comparar valores de varios campos) |
| Texto de validación | Mensaje de error que se muestra si un registro infringe la Regla de validación de tabla |
| Filtro | Criterio de filtrado que se aplica automáticamente al abrir la tabla |
| Orden | Campo u orden predeterminado de clasificación al abrir la tabla |
| Subdatos | Nombre de la tabla o consulta que se mostrará como hoja de subdatos |
Diferencia clave: La Regla de validación de tabla se evalúa sobre el registro completo y puede comparar valores entre campos distintos (por ejemplo, que la fecha de fin sea posterior a la fecha de inicio). La Regla de validación de campo solo se aplica al valor individual del campo.
19. Panel de navegación — Detalles avanzados
El Panel de navegación es el área izquierda de la interfaz de Access que muestra y organiza todos los objetos de la base de datos.
19.1 Organización del Panel de navegación
El panel permite organizar los objetos de cuatro maneras principales (menú desplegable en la cabecera del panel):
| Categoría | Descripción |
|---|---|
| Todos los objetos de Access | Vista predeterminada; agrupa tablas, consultas, formularios, informes, macros y módulos por tipo |
| Tipo de objeto | Igual que la anterior; ordena por tipo de objeto |
| Tablas y vistas relacionadas | Agrupa cada tabla con todos los formularios, informes y consultas que la utilizan |
| Fecha de modificación | Ordena los objetos por fecha de última modificación |
| Fecha de creación | Ordena los objetos por fecha de creación |
| Grupos personalizados | El usuario puede crear sus propias categorías para organizar objetos |
19.2 Barra de búsqueda del Panel de navegación
El Panel de navegación incluye una barra de búsqueda (campo de búsqueda) en la parte superior que permite filtrar los objetos visibles por nombre. Es útil en bases de datos con muchos objetos.
- Se activa haciendo clic en el icono de lupa o escribiendo directamente en el campo de búsqueda.
- Filtra en tiempo real mostrando solo los objetos cuyo nombre contiene el texto escrito.
- Para mostrar todos los objetos de nuevo, se borra el texto del campo de búsqueda.
19.3 Operaciones desde el Panel de navegación
Desde el Panel de navegación se pueden realizar las siguientes operaciones sobre los objetos:
- Abrir (doble clic): Abre el objeto en su vista predeterminada.
- Diseño (clic derecho > Vista Diseño): Abre el objeto en Vista diseño para su edición.
- Renombrar (clic derecho > Cambiar nombre, o F2): Cambia el nombre del objeto.
- Eliminar (clic derecho > Eliminar, o tecla Supr): Elimina el objeto de forma permanente.
- Copiar y pegar: Crea una copia del objeto en la misma base de datos.
- Exportar: Exporta el objeto a otro formato (Excel, PDF, texto, etc.).
- Ocultar en este grupo: Oculta el objeto del panel (sigue existiendo en la base de datos).
20. Vista diseño vs Vista hoja de datos en tablas
Las tablas de Access se pueden visualizar y editar en dos vistas principales. Comprender las diferencias es fundamental para el trabajo cotidiano y para los tests.
20.1 Vista Hoja de datos
La Vista Hoja de datos muestra los datos de la tabla en formato de cuadrícula, similar a una hoja de cálculo:
Características:
- Muestra los registros existentes (filas) y los campos (columnas).
- Permite introducir, editar y eliminar registros directamente.
- Se puede cambiar el orden de las columnas arrastrando los encabezados.
- Se pueden aplicar filtros y ordenaciones temporales sin modificar la estructura.
- Permite agregar un campo nuevo haciendo clic en «Haga clic para agregar».
- No permite cambiar el tipo de dato de un campo de forma avanzada ni definir propiedades detalladas.
Indicadores visuales:
- El lápiz (✎) en el selector de registro indica que el registro está siendo editado pero no guardado.
- El asterisco (*) en la última fila indica la fila de nuevo registro.
- El triángulo (▶) indica el registro activo.
20.2 Vista Diseño
La Vista Diseño muestra la estructura interna de la tabla, no los datos:
Características:
- Permite definir y modificar campos (nombre, tipo de dato, descripción).
- Permite establecer propiedades de cada campo (tamaño, formato, máscara de entrada, regla de validación, etc.).
- Permite definir y modificar la clave principal.
- Permite gestionar los índices de la tabla.
- No muestra los datos almacenados en la tabla.
- Es la única vista que permite cambiar el tipo de dato de un campo, eliminar campos o modificar todas sus propiedades.
20.3 Cambiar entre vistas
Se cambia de vista mediante:
- El botón Ver en la ficha Inicio o Diseño de la cinta de opciones.
- Los botones de vista en la barra de estado (esquina inferior derecha).
- Clic derecho sobre la pestaña del objeto abierto.
Importante: Ciertos cambios en Vista diseño (como eliminar un campo o cambiar su tipo de dato) pueden implicar pérdida de datos si el campo ya contiene información. Access muestra una advertencia antes de confirmar dichos cambios.
21. Ampliación: Integridad referencial y tipos de combinación
21.1 Integridad referencial — Reglas detalladas
La integridad referencial es un conjunto de reglas que Access aplica para garantizar que las relaciones entre tablas sean consistentes. Cuando se activa, Access impone las siguientes restricciones:
- No se puede introducir un valor en el campo de clave externa de la tabla del lado "varios" si ese valor no existe en la clave principal de la tabla del lado "uno".
- No se puede eliminar un registro de la tabla del lado "uno" si existen registros relacionados en la tabla del lado "varios".
- No se puede cambiar el valor de la clave principal de la tabla del lado "uno" si existen registros relacionados en la tabla del lado "varios".
Para activar la integridad referencial: en la ventana de edición de la relación (doble clic sobre la línea de relación), marcar la casilla Exigir integridad referencial.
21.2 Actualización y eliminación en cascada
Las opciones en cascada permiten excepciones controladas a las restricciones de integridad referencial:
| Opción | Comportamiento |
|---|---|
| Actualizar en cascada los campos relacionados | Si se modifica la clave principal de la tabla "uno", Access actualiza automáticamente todos los registros relacionados en la tabla "varios" |
| Eliminar en cascada los registros relacionados | Si se elimina un registro de la tabla "uno", Access elimina automáticamente todos los registros relacionados en la tabla "varios" |
Precaución: La opción de eliminación en cascada puede borrar grandes cantidades de datos de forma irreversible. Debe usarse con criterio.
21.3 Tipos de combinación (join) — Detalle
El tipo de combinación determina qué registros se incluyen en el resultado cuando se relacionan dos tablas en una consulta:
| Tipo | Nombre técnico | Descripción | Registros incluidos |
|---|---|---|---|
| Tipo 1 | Combinación interna (INNER JOIN) | Solo los registros que tienen coincidencia en ambas tablas | Únicamente los registros con valores coincidentes en ambos lados |
| Tipo 2 | Combinación externa izquierda (LEFT JOIN) | Todos los registros de la tabla izquierda, aunque no tengan coincidencia | Todos de la izquierda + coincidentes de la derecha (nulos donde no hay coincidencia) |
| Tipo 3 | Combinación externa derecha (RIGHT JOIN) | Todos los registros de la tabla derecha, aunque no tengan coincidencia | Todos de la derecha + coincidentes de la izquierda (nulos donde no hay coincidencia) |
En Access, el tipo de combinación se configura en el cuadro de diálogo Propiedades de la combinación (doble clic sobre la línea de unión en la ventana Relaciones o en el diseño de consulta). La combinación interna es la predeterminada.
Punto importante para test: En la combinación externa izquierda se incluyen todos los registros de la tabla del lado izquierdo aunque no tengan registros correspondientes en la tabla del lado derecho. En esos casos, los campos de la tabla derecha aparecen con valor nulo.
22. Tabla resumen ampliada de conceptos técnicos
| Concepto | Valor / Descripción |
|---|---|
| Motor de base de datos Access 365 | ACE (Access Connectivity Engine) |
| Motor heredado (Access 97-2003) | Jet (Joint Engine Technology) |
| Extensión formato moderno | .accdb (desde Access 2007) |
| Extensión formato heredado | .mdb (Access 97-2003) |
| Tamaño máximo de base de datos | 2 GB |
| Máximo de campos por tabla | 255 |
| Longitud máxima nombre de campo | 64 caracteres |
| Texto corto: longitud máxima | 255 caracteres |
| Texto largo: máximo en interfaz | 65.535 caracteres |
| Texto largo: máximo en programación | 1 GB |
| Número - Byte: rango | 0 a 255 |
| Número - Entero: rango | -32.768 a 32.767 |
| Número - Entero largo: rango | -2.147.483.648 a 2.147.483.647 |
| Número - Simple: decimales | Hasta 7 |
| Número - Doble: decimales | Hasta 15 |
| Número - Decimal: decimales | Hasta 28 |
| Moneda: decimales fijos | 4 |
| Moneda: dígitos enteros | 15 |
| AutoNumeración: subtipo habitual | Entero largo (incremento de 1) |
| Sí/No: tamaño | 1 bit |
| Sí/No: valor verdadero | -1 |
| Sí/No: valor falso | 0 |
| Objeto OLE: tamaño máximo | 1 GB |
| Hipervínculo: máximo por parte | 2.048 caracteres |
| Caracteres prohibidos en campos | [ ] ! . ` espacio inicial |
| Índices máximos por tabla | 32 |
| Campos en un índice compuesto | Hasta 10 |
| Integridad referencial | Garantiza consistencia entre tablas relacionadas |
| Actualizar en cascada | Propaga cambios de clave principal a claves externas |
| Eliminar en cascada | Borra registros relacionados al eliminar el registro padre |
| Combinación interna | Solo registros con coincidencia en ambas tablas |
| Combinación externa izquierda | Todos los registros de la tabla izquierda |
| Combinación externa derecha | Todos los registros de la tabla derecha |
| Vista Hoja de datos | Muestra y edita registros (filas y columnas) |
| Vista Diseño | Muestra y edita la estructura de la tabla (campos y propiedades) |
| Panel de navegación: atajo | F11 |
| Propiedades de tabla | Descripción, Vista predeterminada, Regla de validación de tabla |
| Regla de validación de tabla | Se evalúa sobre el registro completo; puede comparar varios campos |
23. Funciones integradas de Access 365
Access incorpora un conjunto amplio de funciones integradas que se utilizan en expresiones, consultas, reglas de validación, valores predeterminados y campos calculados. Se escriben igual tanto en la interfaz en español como en el código, aunque muchas tienen un nombre en español y otro en inglés (equivalente).
23.1 Funciones de fecha y hora
| Función (español) | Función (inglés) | Descripción | Ejemplo de uso |
|---|---|---|---|
| Fecha() | Date() | Devuelve la fecha actual del sistema (sin hora) | Fecha() → 16/05/2026 |
| Ahora() | Now() | Devuelve la fecha y hora actuales del sistema | Ahora() → 16/05/2026 10:30:00 |
| Hora() | Time() | Devuelve solo la hora actual del sistema | Hora() → 10:30:00 |
| Año() | Year() | Extrae el año de una fecha | Año([FechaNacimiento]) → 1985 |
| Mes() | Month() | Extrae el mes de una fecha (1-12) | Mes([FechaAlta]) → 5 |
| Día() | Day() | Extrae el día del mes de una fecha (1-31) | Día([FechaAlta]) → 16 |
| Hora() | Hour() | Extrae la hora de una fecha/hora (0-23) | Hora([HoraEntrada]) → 10 |
| Minuto() | Minute() | Extrae los minutos (0-59) | Minuto([HoraEntrada]) → 30 |
| Segundo() | Second() | Extrae los segundos (0-59) de una expresión de tiempo | Segundo(Ahora()) → 45 |
| FechaSerial() | DateSerial() | Construye una fecha a partir de año, mes y día | FechaSerial(2026;5;16) → 16/05/2026 |
| FechaValor() | DateValue() | Convierte un texto en fecha | FechaValor("16/05/2026") → 16/05/2026 |
Usos frecuentes en tests:
Fecha()es la función para obtener la fecha actual (sin la hora). Es la respuesta habitual a preguntas sobre "fecha de hoy en Access".Ahora()devuelve fecha y hora. Se usa en valores predeterminados cuando se necesita registrar el instante exacto.Año([FechaNacimiento])devuelve el año de una fecha, útil para crear campos calculados con el año de un campo de tipo Fecha/Hora.Segundo(Ahora())obtiene los segundos del momento actual, equivalente a los segundos transcurridos desde las 0:00 solo si es el primer minuto; para obtener los segundos totales desde medianoche se usaAhora() - EnteroLargo(Ahora())o(Ahora()-EnteroLargo(Ahora()))*86400.
Importante para test: La pregunta "¿Qué función devuelve la fecha actual en Access?" tiene como respuesta correcta Fecha() (en español) o Date() (en inglés/código). La función Ahora() también devuelve la fecha pero además incluye la hora, por lo que no es la función específica de "solo fecha".
23.2 Funciones numéricas y matemáticas
| Función (español) | Función (inglés) | Descripción | Ejemplo |
|---|---|---|---|
| Redondear() | Round() | Redondea un número al número de decimales indicado | Redondear([Precio];2) → 12,35 |
| Entero() | Int() | Devuelve la parte entera de un número (trunca hacia -∞) | Entero(4,9) → 4 |
| Fix() | Fix() | Devuelve la parte entera de un número (trunca hacia 0) | Fix(-4,9) → -4 |
| Abs() | Abs() | Valor absoluto | Abs(-15) → 15 |
| Sqr() | Sqr() | Raíz cuadrada | Sqr(16) → 4 |
| Rnd() | Rnd() | Devuelve un número aleatorio entre 0 y 1 (excluido) | Rnd() → 0,734... |
| Exp() | Exp() | Número e elevado a la potencia indicada | Exp(1) → 2,718... |
| Log() | Log() | Logaritmo natural | Log(1) → 0 |
Usos frecuentes en tests:
- Rnd() es la función que genera un número aleatorio en Access. Se usa para sorteos, selección aleatoria de registros, etc. Devuelve un valor decimal entre 0 (incluido) y 1 (excluido). Para obtener un entero aleatorio entre 1 y N se usa
Entero(Rnd()*N)+1. - Redondear([Campo]; 2) devuelve el valor del campo redondeado a 2 decimales.
23.3 Funciones de texto (cadena)
| Función (español) | Función (inglés) | Descripción | Ejemplo |
|---|---|---|---|
| Izq() | Left() | Devuelve los N primeros caracteres de una cadena | Izq([Título];3) → "His" |
| Derecha() | Right() | Devuelve los N últimos caracteres de una cadena | Derecha([Autor];2) → "ez" |
| Extrae() | Mid() | Devuelve N caracteres a partir de una posición | Extrae([Texto];2;3) → caracteres 2, 3 y 4 |
| Longitud() | Len() | Devuelve el número de caracteres de una cadena | Longitud([Nombre]) → 8 |
| Mayusc() | UCase() | Convierte a mayúsculas | Mayusc("hola") → "HOLA" |
| Minusc() | LCase() | Convierte a minúsculas | Minusc("HOLA") → "hola" |
| Recortar() | Trim() | Elimina espacios al inicio y al final | Recortar(" hola ") → "hola" |
| Sustituir() | Replace() | Sustituye una subcadena por otra | Sustituir([Texto];"a";"o") |
| Formato() | Format() | Aplica un formato a un valor | Formato(Fecha();"dd/mm/yyyy") |
| PosTexto() | InStr() | Devuelve la posición de una subcadena | PosTexto([Campo];"hola") |
Usos frecuentes en tests:
- Longitud([Campo]) devuelve el número de caracteres de un campo de texto. Se usa frecuentemente en reglas de validación de tabla (por ejemplo,
Longitud([Texto01])<10exige que el valor del campo Texto01 tenga menos de 10 caracteres). - Izq([Título];3) extrae los 3 primeros caracteres del campo Título. Se usa en campos calculados para construir códigos de identificación combinando fragmentos de texto.
- Derecha([Autor];2) extrae los 2 últimos caracteres del campo Autor.
- Para construir un código de identificación combinando los 3 primeros caracteres de "Título" y los 2 últimos de "Autor" se usa la expresión:
Izq([Título];3) & Derecha([Autor];2).
23.4 Función condicional SiInm (IIf)
La función SiInm() (en inglés IIf()) evalúa una condición y devuelve un valor u otro según si la condición es verdadera o falsa. Es la función condicional básica de Access.
Sintaxis: SiInm(condición; valor_si_verdadero; valor_si_falso)
Ejemplos:
SiInm([País]="Francia";"Francés";"Español")→ devuelve "Francés" si el país es Francia, "Español" en cualquier otro caso.SiInm([Sueldo]>2000;"Alto";"Normal")→ devuelve "Alto" si el sueldo supera 2000, "Normal" en caso contrario.SiInm(Es Nulo([Email]);"Sin email";"Con email")→ devuelve texto descriptivo si el campo Email está vacío.
SiInm se puede anidar para crear condiciones múltiples, aunque para muchas condiciones es preferible usar la función ElegirEntre() o lógica VBA.
23.5 Función Cuenta (Count)
La función Cuenta() (en inglés Count()) es una función de agregado que cuenta el número de registros no nulos de un campo en una consulta de totales.
Sintaxis: Cuenta([Campo]) o Cuenta(*) para contar todos los registros.
Cuenta([Nombre])→ cuenta los registros donde el campo Nombre no es nulo.Cuenta(*)→ cuenta todos los registros, incluyendo los que tienen valores nulos.
Se usa en consultas de selección con la opción Totales activada (botón Totales en la ficha Diseño de consulta o desde Inicio > Registros > Totales). En la cuadrícula de diseño de la consulta, la columna donde se aplica Cuenta debe tener seleccionado "Cuenta" en la fila "Total".
Otras funciones de agregado habituales en consultas:
| Función (español) | Función (inglés) | Descripción |
|---|---|---|
| Cuenta() | Count() | Número de registros no nulos |
| Suma() | Sum() | Suma de los valores del campo |
| Promedio() | Avg() | Media aritmética |
| Mín() | Min() | Valor mínimo |
| Máx() | Max() | Valor máximo |
| Primero() | First() | Primer valor en el orden de los registros |
| Último() | Last() | Último valor en el orden de los registros |
24. Generador de expresiones
El Generador de expresiones es una herramienta visual de Access que facilita la creación de expresiones sin necesidad de conocer de memoria todos los nombres de funciones y campos. Es una herramienta auxiliar disponible en múltiples contextos: propiedades de campo, criterios de consulta, propiedades de controles en formularios e informes.
24.1 Acceso al Generador de expresiones
Se puede abrir desde:
- El botón Generador (icono de varita mágica) que aparece a la derecha de los cuadros de propiedades que admiten expresiones (Valor predeterminado, Regla de validación, etc.).
- El atajo Ctrl+F2 en un campo de expresión.
- Clic derecho en la fila "Campo" de la cuadrícula de diseño de una consulta > Zoom.
24.2 Partes del Generador de expresiones
El Generador de expresiones se divide en tres paneles:
- Cuadro de expresión (superior): Zona donde se escribe o edita la expresión.
- Panel izquierdo (elementos de expresión): Muestra una estructura en árbol con las categorías disponibles:
- Funciones integradas (por categoría: fecha/hora, matemáticas, texto, etc.)
- Objetos de la base de datos (tablas, consultas, formularios, informes)
- Constantes (Verdadero, Falso, Nulo)
- Operadores
- Panel central (categorías de expresión): Muestra las categorías del elemento seleccionado a la izquierda.
- Panel derecho (valores de expresión): Muestra los elementos concretos de la categoría seleccionada.
Al hacer doble clic en una función o campo del panel derecho, se inserta automáticamente en el cuadro de expresión.
Importante para test: La herramienta que permite "insertar fácilmente funciones y campos al construir expresiones" es el Generador de expresiones.
25. Consultas — Diseño detallado
25.1 Vistas disponibles para consultas
Las consultas de Access tienen tres vistas principales:
| Vista | Descripción |
|---|---|
| Vista Diseño | Muestra la cuadrícula QBE (Query By Example) para configurar los campos, criterios, ordenaciones y totales de forma visual |
| Vista Hoja de datos | Muestra el resultado de ejecutar la consulta (los registros que cumplen los criterios) |
| Vista SQL | Muestra el código SQL equivalente de la consulta diseñada visualmente. Se puede editar directamente |
La Vista SQL es especialmente relevante para consultas SQL específicas (Unión, Paso a través, Definición de datos) que no pueden diseñarse con la cuadrícula QBE y requieren escribir el código SQL directamente.
Para cambiar entre vistas: botón Ver en la ficha Inicio o Diseño, o los botones de vista en la barra de estado.
25.2 Cuadrícula QBE — Filas y columnas
La cuadrícula QBE (Query By Example) de la Vista Diseño de consulta tiene las siguientes filas:
| Fila | Descripción |
|---|---|
| Campo | Nombre del campo a mostrar o usar en criterios; aquí también se escriben las expresiones de campos calculados |
| Tabla | Tabla de origen del campo |
| Orden | Ordenación del campo: ascendente, descendente o sin ordenar |
| Mostrar | Casilla que determina si el campo aparece en los resultados o solo se usa para aplicar criterios |
| Criterios | Condición que deben cumplir los registros para ser incluidos en el resultado |
| O | Fila adicional de criterios alternativos (OR lógico) |
| Total | Aparece solo cuando se activa la opción Totales; permite seleccionar funciones de agregado o Agrupar por |
Reglas sobre criterios:
- Los criterios en la misma fila se unen con Y lógico (AND): el registro debe cumplir todas las condiciones de esa fila.
- Los criterios en filas distintas (fila Criterios y fila O) se unen con O lógico (OR): el registro debe cumplir al menos una de las condiciones.
25.3 Campos calculados en consultas
Un campo calculado en una consulta es una columna cuyos valores se calculan mediante una expresión en tiempo de ejecución de la consulta. Se diferencia del tipo de dato Calculado de las tablas en que:
- El campo calculado de consulta no se almacena en ninguna tabla; se calcula cada vez que se ejecuta la consulta.
- El tipo Calculado de tabla se almacena físicamente en la tabla.
Sintaxis para crear un campo calculado en la Vista Diseño:
NombreDelCampo: expresión
El nombre va antes de los dos puntos; la expresión, después. Se escribe en la fila Campo de la cuadrícula QBE.
Ejemplos:
PVP: [Precio]*1,21→ muestra el precio con IVA del 21%.LongN: Longitud([Nombre])→ muestra el número de caracteres del campo Nombre.A_N: Año([FechaNacimiento])→ muestra el año de nacimiento.Código: Izq([Título];3) & Derecha([Autor];2)→ código combinando campos de texto.
Comportamiento importante: Si se modifica el valor de un campo base (por ejemplo, el campo Precio) desde la Vista Hoja de datos de la consulta, el campo calculado que depende de él (PVP) se actualiza automáticamente al reflejar el cambio, porque se recalcula en cada ejecución de la consulta. Sin embargo, el campo calculado en sí no es directamente editable.
25.4 Consultas de agrupación (Totales / GROUP BY)
Las consultas de agrupación permiten agrupar registros por uno o más campos y aplicar funciones de agregado (Cuenta, Suma, Promedio, Mín, Máx, etc.) a cada grupo.
Cómo activar los totales: En la Vista Diseño de la consulta, hacer clic en el botón Totales (Σ) de la ficha Diseño. Aparece la fila Total en la cuadrícula QBE.
Opciones de la fila Total:
| Opción | Descripción |
|---|---|
| Agrupar por | El campo se usa para definir los grupos. Los registros con el mismo valor en este campo se agrupan juntos |
| Suma | Calcula la suma de los valores del campo en cada grupo |
| Promedio | Calcula la media aritmética del campo en cada grupo |
| Mín | Devuelve el valor mínimo del campo en cada grupo |
| Máx | Devuelve el valor máximo del campo en cada grupo |
| Cuenta | Cuenta los registros no nulos del campo en cada grupo |
| DesvEst | Desviación estándar de la población |
| Var | Varianza de la población |
| Primero | Primer valor del campo en el grupo |
| Último | Último valor del campo en el grupo |
| Expresión | Se usa cuando la fila Campo contiene una expresión con funciones de agregado |
| Dónde | El campo se usa solo para filtrar registros antes de agrupar (no aparece en el resultado ni en los grupos) |
Comportamiento del Agrupar por con múltiples campos: Cuando se agrupan múltiples campos, Access crea un grupo distinto para cada combinación única de valores de esos campos. Es decir, si se agrupa por "Departamento" y "Año", se obtiene una fila por cada combinación única de departamento y año que exista en los datos.
Importante para test: La opción Dónde en la fila Total se usa cuando se necesita filtrar registros por un campo que no debe formar parte de los grupos de resultados.
25.5 Consultas de parámetros — Sintaxis
Una consulta de parámetros solicita al usuario un valor en el momento de ejecutarse. Se crea escribiendo en la fila Criterios un texto entre corchetes [...] que no corresponda al nombre de ningún campo.
Sintaxis: [Texto que se mostrará al usuario]
Ejemplo: En la fila Criterios del campo Ciudad, escribir [Introduce el nombre de la ciudad:]. Al ejecutar la consulta, Access muestra un cuadro de diálogo con el texto "Introduce el nombre de la ciudad:" y espera que el usuario introduzca un valor.
Notas:
- El texto entre corchetes debe ser diferente al nombre del campo; si coincide, Access lo interpreta como referencia al campo, no como parámetro.
- Se puede usar en criterios de fecha:
Entre [Fecha inicial:] Y [Fecha final:].
25.6 Criterios habituales en consultas
| Criterio | Efecto |
|---|---|
Como "A*" | Registros cuyo campo empieza por la letra A (comodín * = cualquier cadena) |
Como "?arco" | Registros cuyo campo tiene una letra cualquiera seguida de "arco" (comodín ? = un solo carácter) |
Entre #01/01/2022# Y #31/01/2022# | Fechas comprendidas entre el 1 y el 31 de enero de 2022 |
>=#01/01/2020# | Fechas iguales o posteriores al 1 de enero de 2020 |
>=Fecha()-1 Y <Fecha() | Registros del día anterior (ayer) |
Fecha()-1 | Registros cuya fecha es exactamente ayer |
<>0 | Valores distintos de cero |
>=0 Y <=100 | Valores entre 0 y 100 (ambos incluidos) |
Es Nulo | El campo no tiene valor (es nulo) |
No Es Nulo | El campo tiene algún valor (no es nulo) |
"" | El campo contiene una cadena vacía |
Criterio especial para campos Datos adjuntos: Para mostrar solo los registros que tienen un archivo adjunto en un campo de tipo Datos adjuntos, se usa el criterio No Es Nulo (Is Not Null) en la fila Criterios de ese campo. Los registros sin adjuntos tendrán el campo nulo.
Las fechas en expresiones de Access deben ir rodeadas de almohadillas (#): #01/01/2024#. Esto es obligatorio para que Access interprete el valor como fecha y no como texto o expresión.
26. Atajos de teclado y teclas de función en Access 365
Access 365 utiliza las teclas de función (F1-F12) para accesos rápidos a operaciones frecuentes.
| Tecla | Acción |
|---|---|
| F1 | Abrir la Ayuda de Access |
| F2 | Activar el modo de edición en el campo actual (alterna entre selección y edición) |
| F4 | Abrir la lista desplegable del control activo |
| F5 | En la barra de navegación de registros: ir al número de registro indicado |
| F6 | Ciclar entre las partes del formulario o la pantalla |
| F7 | Ortografía y gramática |
| F8 | Activar el modo de selección extendida |
| F11 | Mostrar u ocultar el Panel de navegación |
| F12 | Abrir el cuadro de diálogo Guardar como |
| Ctrl+S | Guardar el objeto activo |
| Ctrl+Z | Deshacer la última acción |
| Ctrl+B | Abrir el cuadro Buscar y reemplazar (en Vista hoja de datos) |
| Ctrl+Inicio | Ir al primer campo del primer registro |
| Ctrl+Fin | Ir al último campo del último registro |
| Tab | Avanzar al siguiente campo |
| Mayús+Tab | Retroceder al campo anterior |
| Ctrl+F2 | Abrir el Generador de expresiones (en campos que lo admiten) |
Importante para test: La tecla F12 abre el cuadro "Guardar como" en Access 365. La tecla F11 muestra u oculta el Panel de navegación.
27. Backstage — Bases de datos recientes y anclaje
La vista Backstage (ficha Archivo) de Access 365 incluye una sección Reciente que muestra las bases de datos abiertas recientemente. Esta lista facilita el acceso rápido a los archivos usados con frecuencia.
27.1 Anclar una base de datos a la lista de recientes
Para que una base de datos permanezca siempre visible en la lista de recientes, aunque se abran muchos otros archivos, se puede anclarla (pin). De esta forma, el archivo queda fijado en la parte superior de la lista y no desaparece aunque se supere el número máximo de recientes mostrados.
Cómo anclar:
- En la vista Backstage (Archivo > Abrir o Archivo > Reciente), localizar el archivo en la lista de recientes.
- Hacer clic en el icono de chincheta (pin) que aparece a la derecha del nombre del archivo.
- El archivo queda anclado y permanece en la lista de recientes independientemente de cuántos otros archivos se abran.
Para desanclar, volver a hacer clic en la chincheta.
Importante para test: La acción de "conservar una base de datos en la lista de Bases de datos recientes para que permanezca visible aunque se abran otros archivos" se realiza mediante la opción de anclar (fijar con chincheta) el archivo en la sección Reciente de la vista Backstage.
28. Importar y vincular datos externos
Access permite trabajar con datos de otras aplicaciones de dos formas distintas: importando los datos (copia permanente en Access) o vinculándolos (conexión en tiempo real con el archivo externo).
28.1 Importar datos
Al importar, Access crea una copia de los datos en una nueva tabla dentro de la base de datos. Los datos se desvinculan del origen: los cambios posteriores en el origen no se reflejan en Access, y viceversa.
Formatos de importación disponibles: Excel (.xlsx, .xls), Access (.accdb, .mdb), ODBC, archivos de texto (CSV, TXT), XML, SharePoint, HTML, Outlook, dBASE, Paradox, Lotus.
28.2 Vincular datos
Al vincular, Access crea una tabla vinculada que apunta al archivo externo. Los datos residen en el origen; Access los muestra y (en algunos casos) permite editarlos en tiempo real.
Comportamiento de las tablas vinculadas:
- Si los datos en el origen (por ejemplo, Excel) cambian, los cambios se reflejan automáticamente al abrir o actualizar la tabla vinculada en Access.
- Si el archivo externo se elimina o se mueve de ubicación, Access no puede encontrar los datos y muestra un error al intentar abrir la tabla vinculada. Access indica que no puede encontrar el origen de datos.
- El Administrador de tablas vinculadas (Herramientas de base de datos > Mover datos > Administrador de tablas vinculadas) permite ver, actualizar y reparar los vínculos cuando cambia la ubicación del archivo externo.
Formatos que admiten vinculación: Excel, Access (tablas de otra base de datos), ODBC, texto, SharePoint, HTML, dBASE, Outlook, Exchange.
Importante para test: Access 365 sí puede utilizar documentos HTML como origen de datos, tanto para importación como para vinculación.
28.3 Diferencia importar vs vincular
| Aspecto | Importar | Vincular |
|---|---|---|
| Ubicación de los datos | En la base de datos Access | En el archivo externo |
| Sincronización | No automática | Automática (en tiempo real) |
| Rendimiento | Mayor (datos locales) | Depende del acceso al archivo externo |
| Modificación del origen | No afecta a Access | Afecta inmediatamente a Access |
| Eliminación del origen | Sin efecto | La tabla vinculada queda inaccesible |
29. Opciones de Access — Configuración general
Las Opciones de Access (Archivo > Opciones) permiten personalizar el comportamiento de la aplicación. Las categorías más relevantes son:
| Categoría | Opciones principales |
|---|---|
| General | Combinación de colores, fuente predeterminada, unidades de medida |
| Base de datos actual | Compactar al cerrar, título de la aplicación, formulario de inicio, ventanas superpuestas vs pestañas |
| Hoja de datos | Aspecto de las celdas, fuente predeterminada, efectos de celda |
| Diseñadores de objetos | Tipo de campo y tamaño predeterminados al crear tablas, formato de indexación |
| Revisión | Opciones de autocorrección y ortografía |
| Idioma | Preferencias de idioma de la interfaz y edición |
| Opciones de cliente | Edición, búsqueda, acceso a datos, avanzadas |
| Personalizar cinta de opciones | Agregar o quitar fichas y grupos de la cinta |
| Barra de herramientas de acceso rápido | Agregar o quitar comandos de la barra de acceso rápido |
| Complementos | Administrar complementos COM y de Access |
| Centro de confianza | Opciones de seguridad, macros, ActiveX, documentos de confianza |
29.1 Formato predeterminado de nuevas bases de datos
En Opciones de Access > Base de datos actual (o en algunas versiones en General), se puede cambiar el formato de archivo predeterminado para las nuevas bases de datos:
- Access 2000 (.mdb)
- Access 2002-2003 (.mdb)
- Access 2007-2016 (.accdb) — es el predeterminado en Access 365
El formato .accdb es el predeterminado en Access 365 y es la opción recomendada para todas las bases de datos nuevas.
30. Herramienta Analizar tabla — Detección de duplicados
La herramienta Analizar tabla (ficha Herramientas de base de datos > Analizar > Analizar tabla) permite detectar y corregir datos redundantes o duplicados en tablas de Access.
30.1 Funcionamiento del Asistente para analizar tablas
El asistente:
- Examina una tabla seleccionada en busca de datos repetidos.
- Sugiere dividir la tabla en varias tablas normalizadas para eliminar la redundancia.
- Crea las nuevas tablas y establece relaciones entre ellas.
- Opcionalmente, crea una consulta que reproduce la estructura original de la tabla.
Importante para test: Después de una importación masiva donde se detectan "gran cantidad de datos duplicados", la herramienta para solucionarlo automáticamente es Analizar tabla (también se puede mencionar como "Asistente para analizar tablas"), disponible en la ficha Herramientas de base de datos.
30.2 Analizar rendimiento
La herramienta Analizar rendimiento (Herramientas de base de datos > Analizar > Analizar rendimiento) examina los objetos de la base de datos y sugiere mejoras para optimizar su rendimiento:
- Índices adicionales recomendados.
- Cambios de tipo de dato.
- Relaciones que pueden mejorarse.
Devuelve una lista de Ideas, Sugerencias y Recomendaciones sobre los objetos analizados.
31. Crear un módulo VBA en Access 365
Los módulos son objetos de Access que contienen código VBA. Para crear un módulo desde la cinta de opciones, la secuencia de pasos es:
- Hacer clic en la ficha Crear de la cinta de opciones.
- En el grupo Macros y código, hacer clic en Módulo (para un módulo estándar) o Módulo de clase (para un módulo de clase).
- Se abre el Editor de Visual Basic para Aplicaciones (VBE) con el nuevo módulo listo para escribir código.
Alternativamente, se puede acceder desde Herramientas de base de datos > Herramientas > Visual Basic para abrir el entorno de VBA completo.
32. Tipo de dato Sí/No — Aclaración sobre almacenamiento
El tipo de dato Sí/No almacena valores booleanos. Hay una confusión frecuente sobre su tamaño y codificación:
- Tamaño de almacenamiento: 1 bit (no 1 byte).
- Codificación interna en Access:
- Verdadero (Sí, Activado): -1
- Falso (No, Desactivado): 0
Esta codificación de -1 para verdadero (en lugar del 1 habitual en otros lenguajes) es específica de Access y del motor ACE/Jet. En contextos de programación general, verdadero suele ser 1 y falso 0; en Access la convención es -1 y 0.
Importante para test: Si una pregunta menciona que el tipo de dato booleano de Access almacena "0 para falso y 1 para verdadero", la respuesta es incorrecta porque Access usa -1 (no 1) para verdadero. Si la pregunta menciona "0 para falso y -1 para verdadero" y pregunta si el tamaño es 1 byte, también es incorrecta porque el tamaño es 1 bit, no 1 byte.
Nombres de campo válidos e inválidos — ejemplos prácticos de examen
Access permite casi cualquier combinación de letras, números y caracteres especiales en los nombres de campo, con la única excepción de los caracteres reservados por el motor de expresiones.
Nombres de campo VÁLIDOS (Access los acepta sin error)
| Nombre | ¿Válido? | Motivo |
|---|---|---|
| TotalVentas_en_€ | Sí | El símbolo € no está reservado; el guión bajo tampoco |
| 1_id_moneda€ | Sí | Los nombres pueden empezar por dígito y contener € |
| Precio_Final | Sí | Letras, mayúsculas y guiones bajos son válidos |
| NombreDe_Cliente | Sí | Totalmente válido |
| Fecha_Nacimiento | Sí | Sin caracteres especiales reservados |
Nombres de campo INVÁLIDOS (Access muestra error al intentar guardar)
| Nombre | ¿Válido? | Carácter que lo invalida |
|---|---|---|
| PrecioFinal! | No | El signo ! es el operador de referencia de Access |
| [TotalVentas] | No | Los corchetes [ y ] están reservados para expresiones |
| Precio.Final | No | El punto . es separador de objeto en expresiones |
| Nombre del Campo | Depende | Espacios interiores se permiten pero no se recomiendan |
Regla de oro para el examen: Los caracteres [, ], !, . (punto) y el acento grave invalidan el nombre. El símbolo €, los guiones bajos, los números (incluso al inicio) y las letras con tilde son completamente válidos.
Tipo de datos Moneda — precisión decimal exacta
El tipo Moneda (Currency) tiene una precisión fija de 15 dígitos enteros + 4 posiciones decimales. A diferencia del tipo Doble (que puede tener errores de redondeo en punto flotante), Moneda usa aritmética de punto fijo para evitar errores en cálculos financieros.
| Característica | Valor |
|---|---|
| Parte entera | Hasta 15 dígitos |
| Posiciones decimales | 4 (fijas, siempre) |
| Tamaño en disco | 8 bytes |
| Rango | de −922.337.203.685.477,5808 a 922.337.203.685.477,5807 |
Funciones NúmAleat() y Cronómetro()
NúmAleat() — número aleatorio
- Nombre en Access español: NúmAleat()
- Equivalente VBA/inglés: Rnd()
- Devuelve un número aleatorio de tipo Simple >= 0 y < 1 (nunca igual a 1)
- Ejemplo: para obtener un entero aleatorio entre 1 y N: Int(NúmAleat() * N) + 1
| Expresión | Resultado típico |
|---|---|
| NúmAleat() | 0,734521... |
| Int(NúmAleat() * 100) + 1 | Entero entre 1 y 100 |
Cronómetro() — segundos desde medianoche
- Nombre en Access español: Cronómetro()
- Equivalente VBA/inglés: Timer()
- Devuelve el número de segundos transcurridos desde la medianoche como valor de tipo Simple
- Ejemplo: Cronómetro() a las 10:30:00 devuelve 37800 (10×3600 + 30×60)
- Se usa para medir tiempos de ejecución o como semilla para NúmAleat()
PostgreSQL no es un producto de Microsoft Access
Access es un SGBD de Microsoft. Para el examen es importante distinguir qué productos son de Microsoft y cuáles no:
| Producto | Fabricante | ¿Relación con Access? |
|---|---|---|
| Microsoft Access 365 | Microsoft | — (es el propio producto) |
| Microsoft SQL Server | Microsoft | Compatible (tablas vinculadas, paso a través) |
| PostgreSQL | Open Source (PostgreSQL Global Development Group) | No es un producto de Microsoft |
| LibreOffice Base | The Document Foundation | No compatible para importación directa |
| MySQL | Oracle / Open Source | No compatible nativamente |
PostgreSQL es un sistema gestor de bases de datos relacional de código abierto, no vinculado a Microsoft. No es posible importar datos de PostgreSQL en Access sin configurar un controlador ODBC específico.
Divisor de bases de datos (referencia desde Art. 1)
La herramienta Divisor de bases de datos permite dividir un archivo .accdb en dos partes:
- Back-end: contiene las tablas con los datos
- Front-end: contiene formularios, informes, consultas y macros; incluye vínculos a las tablas del back-end
Se accede desde: Herramientas de base de datos → Mover datos → Base de datos de Access
Esta arquitectura permite que varios usuarios compartan los datos del back-end mientras cada uno tiene su propio front-end con el diseño de la aplicación.
Funciones Izq() y Der() — sintaxis con campo sin acento
En Access, las funciones de texto para extraer subcadenas son:
| Función | Sintaxis (campo sin tilde) | Resultado |
|---|---|---|
| Izq() | Izq([Titulo]; 3) | Primeros 3 caracteres del campo Titulo |
| Der() | Der([Autor]; 2) | Últimos 2 caracteres del campo Autor |
| Izq() + Der() | Izq([Titulo]; 3) & Der([Autor]; 2) | Concatenación de ambos |
| Extrae() | Extrae([Titulo]; 2; 4) | 4 caracteres desde posición 2 |
| Longitud() | Longitud([Nombre]) | Número total de caracteres |
Nota: Los nombres de campo en expresiones pueden o no llevar tilde (Titulo / Título), dependiendo de cómo se haya definido el campo. El separador es el punto y coma (;) en la versión española.
Ejemplo en diseño de consulta (columna de alias):
- LongN: Longitud([Nombre]) — crea una columna llamada LongN con la longitud del campo Nombre