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));
Jede Map
MUSS einen Area
haben , als area_id
ist nicht null (und ist ein Foreign key
). auf Area
)
Aber Sie werden nicht in der Lage sein (und es ist auch nicht erwünscht), "mindestens eine Karte" für jedes Gebiet zu haben.
Eines Tages müssen Sie ein Area
erstellen . Und es wird keine Map
haben zu diesem Zeitpunkt.Oder machen Sie "normale" Überprüfungen, um die Gebiete ohne Karte zu sehen.
Vielleicht möchten Sie einen Area
löschen , wenn es keine zugehörige Map
mehr hat , wenn Sie eine Map
löschen .