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));
SqlFiddle
Cada
Map DEVE ter uma Area , como area_id não é null (e é uma Foreign key na Area ) Mas você não poderá (e não é desejável) ter "pelo menos um mapa" para cada área.
Um dia, você terá que criar uma
Area . E não terá nenhum Map neste momento. Ou faça verificações "regulares" para ver as Áreas sem nenhum Mapa. Você pode querer excluir uma
Area , se não tiver mais Map relacionado , quando você exclui um Map .