drop table if exists dummy cascade;
drop table if exists leitet cascade;
drop table if exists abteilung cascade;
drop table if exists mitarbeiter cascade;

create table mitarbeiter
(
  mid   integer     not null,
  name  varchar(20) not null,
  chef  integer,
  primary key (mid),
  foreign key (chef) references mitarbeiter (mid)
);

create table abteilung
(
  aid         integer     not null,
  name        varchar(20) not null,
  primary key (aid)
);

create table leitet
(
  mid integer     not null,
  aid integer     not null,
  von date        not null,
  bis date,
  primary key (mid, aid, von),
  foreign key (mid) references mitarbeiter (mid),
  foreign key (aid) references abteilung   (aid)
);

create table dummy
( x integer );
