0
CREATE TABLE `table_A` (
  `ID` int(11) NOT NULL,
  `APPLICATION` varchar(5) NOT NULL,
  `APPLICATION_ID` varchar(45) NOT NULL,
   PRIMARY KEY (`ID`,`APPLICATION`),
   key `table_A_fk` (`APPLICATION_ID`),
   CONSTRAINT `table_A_fk` FOREIGN KEY (`APPLICATION_ID`) REFERENCES `table_B` (`APP_NAME`)
) ENGINE=InnoDB       

CREATE TABLE `table_B` (
  `ID` int(11) NOT NULL,
  `APP_ID` varchar(20) NOT NULL,
  `APP_NAME` varchar(45) NOT NULL,
   PRIMARY KEY (`ID`,`APP_NAME`)
) ENGINE=InnoDB

I need add a foreign key in table_A column name is (Application_id) with reference table being table_B column (APP_NAME) could you please help us on above code I have error with code 1215 ?

Rohit Gaikwad
  • 817
  • 2
  • 8
  • 24
viswa
  • 51
  • 1
  • 9

1 Answers1

0
  1. To define a foreign keys in mysql the referenced field of the parent table must be indexed.

    KEY ( APP_NAME )

  2. Table_B needs to be created prior to Table_A in order to set a foreign key referencing to it.

coding
  • 71
  • 2
  • 10