• Post Reply Bookmark Topic Watch Topic
  • New Topic

Not able to add two foreign keys in one table in MySQL

 
Zeona Neo
Greenhorn
Posts: 27
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have to add two foregn keys from two different table into on single but it showing error that "Cannot add foreign Key Constraint".....Please help me

FIRST TABLE

CREATE TABLE Train_Details
(
Train_ID int PRIMARY KEY not null,
Train_Name varchar(60) not null,
Train_Type varchar(25) not null
);

SECOND TABLE

CREATE TABLE Passenger_Details
(
Passenger_ID int unsigned auto_increment primary key,
Full_Name varchar(25) not null,
Address varchar(100) not null,
Age int unsigned not null,
Gender varchar(10) not null,
DOB date not null,
Phone long not null,
Train_ID int,
Foreign key (Train_ID) references Train_Details(Train_ID)
);


THIRD TABLE

CREATE TABLE Booking_Passenger_Details
(
Serial_No int unsigned auto_increment primary key,
Train_ID int unsigned not null,
Passenger_ID int unsigned not null,
Seat_No int unsigned not null,
Class varchar(25) not null,
FOREIGN KEY (Passenger_ID) REFERENCES Passenger_Details(Passenger_ID),
FOREIGN KEY (Train_ID) REFERENCES Train_Details(Train_ID)
)Engine=InnoDB;
 
Ron McLeod
Saloon Keeper
Posts: 1288
149
Android Angular Framework Eclipse IDE Java Linux MySQL Database Redhat TypeScript
  • Likes 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You have the data type for Train_ID in one table as int, but as int unsigned in another. You will need to make the types the same to create the foreign key relationship.

Also, it seems odd that you have Train_ID as a column in the Passenger_Details table. I would think that the relationship between and passenger and a train should be through a booking, unless the passenger is only permitted to ride on a single train in the system.
 
Zeona Neo
Greenhorn
Posts: 27
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thank You So Much Sir....

My Problem is Solved.....
It is working finely....
 
Happiness is not a goal ... it's a by-product of a life well lived - Eleanor Roosevelt. Tiny ad:
the new thread boost feature: great for the advertiser and smooth for the coderanch user
https://coderanch.com/t/674455/Thread-Boost-feature
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!