Las reglas que mantienen los datos limpios
Sin reglas, una base de datos se llena de duplicados, huérfanos y campos vacíos. Las reglas son cuatro ideas: clave primaria (cada fila única), clave foránea (las relaciones apuntan a algo real), integridad (no se rompe la coherencia) e índice (buscar rápido). Las nombras en tu especificación; la IA las configura.
Qué hace cada regla
| Regla | Qué garantiza | Sin ella… |
|---|---|---|
| Clave primaria | Cada registro es único e identificable | dos filas «iguales» que nadie sabe cuál es la buena |
| Clave foránea | Una relación apunta a un registro que existe | pagos que referencian facturas inexistentes |
| Obligatorio / único | Un campo siempre tiene valor y no se repite | correos vacíos o duplicados rompiendo el login |
| Índice | Acelera las búsquedas frecuentes | la app va lenta cuando hay muchos datos |
[Integridad referencial en acción]
Esta actividad interactiva ('Explicacion visual') requiere el motor completo de Lumbre. El contenido estatico se muestra arriba; para la experiencia interactiva, visita la version online de este objeto.
Para reforzar
Relaciones y claves: cómo se conecta todo
OA publicado sobre clave primaria y foránea y tipos de relación. Aquí las convertimos en reglas que exiges y auditas.
Prompt con reglas de integridad
Al crear las tablas del modelo de facturacion, aplica estas reglas y explicame cada una:\n- clave primaria id en cada tabla, autoincremental.\n- factura.empresa_id debe ser CLAVE FORANEA hacia empresa.id (no aceptar una factura de empresa inexistente).\n- pago.factura_id clave foranea hacia factura.id.\n- usuario.email: OBLIGATORIO y UNICO.\n- indice sobre factura.empresa_id porque se filtra mucho por empresa.\n\nNo dejes campos clave opcionales sin justificar.Prueba
Tu sistema registró pagos que referencian facturas que fueron borradas hace meses. ¿Qué regla de integridad faltó?
Un índice sirve para garantizar que no haya valores duplicados en una columna.
Detecta la regla ausente
Revisas las reglas de un modelo de usuarios. Señala la ausencia que causará datos duplicados y login roto:
- id como clave primaria en la tabla usuario.
- El campo email se deja opcional y sin restricción de unicidad.
- Un índice sobre email para acelerar el inicio de sesión.
- Clave foránea de perfil hacia usuario.id.
Identifica la linea con error.
Toma tu modelo y, para cada tabla, anota: cuál es su clave primaria, qué campos deben ser obligatorios/únicos y qué relaciones necesitan foránea. Añádelo al prompt de creación.