Enunciado #
Un sistema veterinario necesita gestionar los animales y sus chips de identificación. Cada animal tiene un único chip y cada chip está asociado a un único animal.
Datos que debes almacenar #
- Animal:
id_animal(entero, identificador),nombre(texto),especie(texto),raza(texto),fecha_nacimiento(fecha) ynombre_dueno(texto). - Chip:
id_chip(entero, identificador),numero_chip(texto, único),fecha_implantacion(fecha) yubicacion_implantada(texto; por ejemplo, cuello o pata).
Reglas del negocio #
- Cada animal debe tener exactamente un chip y un chip no puede identificar a dos animales.
- El número de chip debe conservarse como texto, ya que puede incluir ceros iniciales.
- Para esta solución, incorpora
id_chip(entero) enAnimaly conecta ese campo con el identificador deChip. Decide qué restricciones necesita para garantizar la relación 1:1.
La regla de que tampoco existan chips sin animal es obligatoria en el negocio. Una FK obligatoria y única desde Animal no garantiza por sí sola esa participación total del lado de Chip: al implementar la base de datos habría que controlar el alta y la baja de ambos registros mediante transacciones y validación adicional.
Diseña las dos tablas, sus claves y la relación 1:1.
Criterios para el challenge #
Conserva los nombres de tablas y campos indicados; los nombres de campos están escritos sin tildes y con guiones bajos. Los tipos entre paréntesis corresponden a las opciones del editor. Todos los campos son obligatorios (NN), salvo los marcados como opcionales; marca las claves primarias (PK), foráneas (FK) y las restricciones de unicidad que se deducen de las reglas.
Para esta práctica, deja desactivados autoincremento, clave alternativa e índice, y deja vacíos CHECK, valor por defecto y las acciones ON DELETE y ON UPDATE. Representa las relaciones con los extremos 1 y n, o 1 y 1; la opcionalidad de una FK se indica con NN desmarcado. Las reglas que afectan a varias filas, los rangos de valores y los catálogos de valores se razonan aparte: no se comprueban solo con las conexiones del diagrama.