Mysql SQL错误:#1005-Can';不创建表
这是我的密码:Mysql SQL错误:#1005-Can';不创建表,mysql,foreign-keys,Mysql,Foreign Keys,这是我的密码: create table if not exists Pelajar ( no_pelajar char(7) not null, nama varchar(30) not null, alamat varchar(50) not null, no_telepon varchar(10), grade integer not null, primary key (no_pelajar) ); create table if no
create table if not exists Pelajar (
no_pelajar char(7) not null,
nama varchar(30) not null,
alamat varchar(50) not null,
no_telepon varchar(10),
grade integer not null,
primary key (no_pelajar)
);
create table if not exists Kelas (
kode_kelas char(5) not null,
no_pengajar char(9) not null,
no_pelajaran char(4) not null,
ruang integer not null,
waktu char(5) not null,
primary key (kode_kelas)
);
create table if not exists Pelajaran (
no_pelajaran char(4) not null,
grade integer not null,
subjek varchar(30) not null,
primary key (no_pelajaran)
);
create table if not exists Pengajar (
no_pengajar char(9) not null,
nama varchar(30) not null,
alamat varchar(50) not null,
no_telepon varchar(10) not null,
primary key (no_pengajar)
);
create table if not exists Pembayaran (
no_pembayaran char(11) not null,
status_pembayaran varchar(11) not null,
tgl_pembayaran char(8) not null,
primary key (no_pembayaran)
);
create table if not exists KartuAnggota (
no_pelajar char(7) not null,
kode_kelas char(5) not null
);
create table if not exists SlipPembayaran (
no_pembayaran char(11) not null,
no_pelajar char(7) not null
);
alter table SlipPembayaran
add foreign key (no_pembayaran)
references Pembayaran(no_pembayaran);
alter table SlipPembayaran
add foreign key (no_pelajar)
references Pelajar(no_pelajar);
alter table KartuAnggota
add foreign key (kode_kelas)
references Kelas(kode_kelas);
alter table KartuAnggota
add foreign key (no_pelajar)
references Pelajar(no_pelajar);
alter table Kelas
add foreign key (no_pelajaran)
references Pelajaran(no_pelajaran);
alter table Kelas
add foreign key (no_pengajar)
references Pengajar(no_pengajar);
=================================================================================
运行代码后,我得到了以下消息:
SQL查询:
ALTER TABLE KartuAnggota ADD FOREIGN KEY ( kode_kelas ) REFERENCES Kelas( kode_kelas ) ;
MySQL说:
#1005-无法创建表“bimbel.#sql-2f2c_1c6”(错误号:150)
您能解释一下吗?如果您重新创建一个被删除的表,它必须有一个符合引用它的外键约束的定义。如前所述,它必须具有正确的列名和类型,并且必须在引用的键上具有索引。如果不满足这些条件,MySQL将返回错误号1005,并在错误消息中引用错误150