我有此代码,但我不知道如何解决此问题,有人可以帮助我吗?

时间:2019-05-25 00:14:37

标签: mysql

我正在上课,但我在使用此代码时遇到了麻烦,并且出现错误1364和许多其他错误,有人可以帮助我吗?

use trenesito_chuchu;

drop table if exists agenda;
create table agenda(
id_viaje int not null primary key,
hora_llegada varchar(50) not null,
hora_salida varchar(50) not null,
id_tren int not null,
id_estacion int not null,
foreign key(id_estacion) references estacion(id_estacion));
insert into agenda(id_viaje,hora_llegada,hora_salida) values
('1','5:00am','5.30am'),
('2','6:00am','6.30am'),
('3','7:00am','7.15am'),
('4','8:00am','8.15am'),
('5','9:00am','9.30am'),
('6','1:00am','1.45am'),
('7','1:00am','1.30am'),
('8','2:00am','2.45am'),
('9','5:00am','5.15am'),
('10','6:00am','6:30am'),
('11','8:00am','8.30am'),
('12','4:00am','4.30am'),
('13','3:00am','3.30am'),
('14','3:00am','3.15am'),
('15','5:00am','5.15am'),
('16','1:00am','1.15am'),
('17','2:00am','2.45am'),
('18','2:00am','2.45am'),
('19','8:00am','8.30am'),
('20','6:00am','6.30am');

drop table if exists estacion;
create table estacion(
id_estacion int not null primary key,
nombre varchar(50) not null);
insert into estacion(id_estacion,nombre) values
('1','Metro'),
('2','Metro'),
('3','Reynosa'),
('4','Reynosa'),
('5','Antigua Estacion'),
('6','Antigua Estacion'),
('7','Chabacano'),
('8','Chabacano'),
('9','Suburbana'),
('10','Suburbana'),
('11','La Catorce'),
('12','La Catorce'),
('13','Bellas Artes'),
('14','Bellas Artes'),
('15','Maquina de Tren'),
('16','Maquina de Tren'),
('17','Ferrocarril de Monterrey'),
('18','Ferrocarril de Monterrey'),
('19','Del Valle'),
('20','Del Valle');

drop table if exists tren;
create table tren(
id_tren int not null primary key,
modelo varchar(50) not null);
insert into tren(id_tren,modelo) values
('1','Ave'),
('2','Ave'),
('3','Pato'),
('4','Pato'),
('5','Velaro'),
('6','Velaro'),
('7','AV City'),
('8','AV City'),
('9','Oaris'),
('10','Oaris'),
('11','Avant 114'),
('12','Avant 114'),
('13','Ave 112'),
('14','Ave 112'),
('15','Alvia'),
('16','Alvia'),
('17','Intercity'),
('18','Intercity'),
('19','Frankenstein'),
('20','Frankenstein');

drop table if exists pasajero;
create table pasajero(
id_pasajero int not null primary key,
nombre varchar(50) not null);
insert into pasajero(id_pasajero,nombre) values
('1','Carlos'),
('2','Juan'),
('3','Pedro'),
('4','Pancho'),
('5','Armando'),
('6','Luis'),
('7','Hugo'),
('8','David'),
('9','Gonzalo'),
('10','Roman'),
('11','Diego'),
('12','Juan Carlos'),
('13','Efren'),
('14','Sofia'),
('15','Elvira'),
('16','Danna'),
('17','America'),
('18','Ernesto'),
('19','Fernando'),
('20','Eduardo');

drop table if exists reserva;
create table reserva(
id_viaje int not null,
id_pasajero int not null,
fecha varchar(50) not null,
vagon int not null,
asiento varchar(50),
id_boleto int not null primary key,
foreign key(id_viaje) references agenda(id_viaje),
foreign key(id_pasajero) references pasajero(id_pasajero));
insert into reserva(fecha,vagon,asiento,id_boleto) values
('01/05/2019','1','32A','1'),
('02/05/2019','2','35B','2'),
('03/06/2019','3','17C','3'),
('04/12/2019','4','26C','4'),
('05/03/2019','5','86A','5'),
('06/09/2019','6','99B','6'),
('07/08/2019','7','15C','7'),
('08/07/2019','8','10B','8'),
('09/01/2019','9','12A','9'),
('10/11/2019','9','64S','10'),
('11/11/2019','8','74S','11'),
('12/12/2019','7','32S','12'),
('13/06/2019','5','65B','13'),
('14/03/2019','1','89A','14'),
('15/05/2019','2','91C','15'),
('16/08/2019','6','15A','16'),
('17/01/2019','4','65C','17'),
('18/09/2019','3','85B','18'),
('19/10/2019','1','37A','19'),
('20/04/2019','1','56C','20');

我想制作表,并将名为id_estacion,id_tren,id_pasajero和id_viaje的列与它们所属的表相关联(它们具有相同的名称)

1 个答案:

答案 0 :(得分:1)

您正在尝试创建对尚不存在的表的迁移,例如,在表agenda中,您正在创建对estacion的迁移,但尚未创建。

尝试组织表格,从不需要FK的表格到引用其他表格的表格的顺序创建表格。

按以下顺序:

  1. 帕萨耶罗
  2. 特伦
  3. 撤离
  4. 议程
  5. 储备金

希望这会有所帮助!