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));
Varje Map
MÅSTE ha ett Area
, som area_id
är inte null (och är en Foreign key
på Area
)
Men du kommer inte att kunna (och det är inte önskvärt) att ha "minst en karta" för varje område.
En dag måste du skapa ett Area
. Och den kommer inte att ha någon Map
vid denna tidpunkt. Eller gör "vanliga" kontroller för att se områdena utan någon karta.
Du kanske vill ta bort ett Area
, om den inte har någon mer relaterad Map
, när du tar bort en Map
.