我用注释标记的两个外键有什么问题?
create database db;
use db;
create table Flug(
Flugbez varchar(20),
FDatum Date,
Ziel varchar(20),
Flugzeit int,
Entfernung int,
Primary Key (Flugbez, FDatum)
);
create table Flugzeugtyp(
Typ varchar(20),
Hersteller varchar(20),
SitzAnzahl int,
Reisegeschw int,
primary key (Typ)
);
create table flugzeug(
Typ varchar(20),
SerienNr int,
AnschDatum Date,
FlugStd int,
primary key(Typ,SerienNr),
foreign key(Typ) references Flugzeugtyp(Typ)
);
create table Abflug(
Flugbez varchar(20),
FDatum Date,
Typ varchar(20),
Seriennr int,
Kaptaen varchar(20),
Primary key(Flugbez,FDatum,Typ,SerienNr),
Foreign key(Flugbez) references Flug(Flugbez),
-- Foreign key(FDatum) references Flug(FDatum),
Foreign key(Typ) references Flugzeugtyp(Typ)
-- ,Foreign key(SerienNr) references Flugzeug(SerienNr)
);
当我取消注释外键时,我收到以下错误:
ERROR 1005 (HY000): Can't create table 'db.abflug' (errno: 150)
我使用 MySQL Server 5.5 的标准安装。