create table Area(id int primary key auto_increment, name varchar(100));
create table Map(id int primary key auto_increment,
area_id int not null,
name varchar(100),
foreign key (area_id) references area(id));
Cada Map
DEBE tener un Area
, como area_id
no es nulo (y es una Foreign key
en Area
)
Pero no podrá (y no es deseable) tener "al menos un mapa" para cada área.
Un día, tendrás que crear un Area
. Y no tendrá ningún Map
en este momento. O realice comprobaciones "regulares" para ver las áreas sin ningún mapa.
Es posible que desee eliminar un Area
, si no tiene más Map
relacionado , cuando eliminas un Map
.