| Propiedad | Descripción | Ejemplo |
| Nombre del campo | Identificador único en la tabla. Sin espacios recomendado (NombreCliente). | ApellidoPaterno |
| Tipo de dato | Define QUÉ valores acepta y operaciones permitidas. | Texto Corto (255 chars), Texto Largo (Rich Text), Numérico (Byte, Entero, Largo, Simple, Doble, Decimal), Moneda (4 decimales, exacto), Fecha/Hora, Sí/No (Booleano), AutoNum (Contador único), Hipervínculo, Adjunto (archivos), Calculado (expresión), Lookup/Relación (FK visual). |
| Tamaño | Para Texto/Numérico. Optimiza almacenamiento. | Texto: 50. Numérico: Largo (4 bytes, -2M a 2M). |
| Máscara de entrada | Formato forced de entrada (visual + validación). | 00000 (CP), 99/99/0000 (fecha), AAAA-AAAA (matrícula). |
| Regla de validación | Expresión lógica (True/False) para aceptar valor. | >=Date() (fecha hoy o futura), Between 0 And 100. |
| Texto de validación | Mensaje si falla regla. | "La fecha debe ser hoy o posterior". |
| Valor predeterminado | Valor auto al crear registro. | Date(), False, "Pendiente", =Environ("USERNAME"). |
| Requerido | Sí/No (Not Null). | Sí (PK, FK, datos obligatorios). |
| Indexado | Sin / Sí (Duplicados OK) / Sí (Sin duplicados = Unique). | Sí (Sin dup) en PK, Email, DNI. Sí (Dup OK) en FK, campos de búsqueda frecuente. |
| Descripción | Texto ayuda (barra estado). | "Apellido paterno del cliente". |
Tipos de datos clave y cuándo usar
- AutoNum (Long/LongLong): Clave Principal (PK) sustituta ideal. Único, auto, inmune a cambios negocio, compacto (4/8 bytes), rápido en joins/índices.
- Moneda: Dinero. Exacto (4 decimales fijos). Evita errores punto flotante (Single/Double).
- Fecha/Hora: Fechas y horas. No uses Texto para fechas. Permite cálculos (
DateDiff, DateAdd), filtros, orden correcto.
- Numérico (Long/Double/Decimal): Cantidades, medidas, IDs foráneos (Long), porcentajes (Double/Single), precisos (Decimal).
- Texto Corto: Nombres, códigos, emails, teléfonos (texto, no número), direcciones cortas. Tamaño justo.
- Sí/No: Banderas, estados binarios (Activo, Pagado, Enviado).
Claves: Primaria (PK), Foránea (FK), Compuesta, Índices
- PK: Identificador único de fila. Una por tabla. AutoNum = mejor práctica. Crea índice único automático.
- FK: Campo que referencia PK de otra tabla. Mismo tipo/tamaño que PK referenciada. Crea Relación (Herramientas de base de datos > Relaciones). Fuerza Integridad Referencial (Cascada Actualizar/Borrar opcional).
- Compuesta: PK = 2+ campos (Ctrl+clic selectores > Llave). Útil en tablas N:M (
PedidoID + ProductoID).
- Índices secundarios: En campos de búsqueda/filtro/join frecuentes (Email, DNI, Fecha, FK). Mejora SELECT/WHERE/JOIN. Penaliza INSERT/UPDATE/DELETE (mantenimiento índice).
Campo Calculado (Access 2010+)
Tipo de dato Calculado. Expresión usando otros campos de la MISMA tabla. [PrecioUnitario] * [Cantidad] * (1 - [Descuento]). No se almacena (virtual), se evalúa al leer. No indexable directamente. Útil para vistas, formularios, informes. No usar en PK/FK.
Campo Lookup (Asistente búsqueda) - ¡Cuidado!
En Vista Diseño, tipo "Lookup Wizard" crea campo que muestra valor de otra tabla (combobox) pero almacena el ID (FK). Oculta la FK real. Dificulta SQL, VBA, migración, consultas. Mejor práctica: Usa tipo de dato numérico (Long) para FK, crea Relación, y en Formulario usa Cuadro combinado (ComboBox) con Origen de fila = consulta SQL a la tabla relacionada.
Resumen: Buen diseño de campos
- Un campo = Un hecho atómico (1FN).
- Nombre claro, singular, PascalCase/snake_case consistente.
- Tipo de dato más restrictivo posible.
- PK = AutoNum (salvo clave natural estable y simple).
- FK = Mismo tipo que PK referenciada + Relación + Índice.
- Validaciones en motor (Regla validación), no solo UI.
- Documenta (Descripción).