Mam następujący błąd związany z kluczem obcym przez co nie mogę eksportować modelu do pliku mysql:
Executing SQL script in server
ERROR: Error 1215: Cannot add foreign key constraint
SQL Code:
-- -----------------------------------------------------
-- Table `mydb`.`Zamowienie`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Zamowienie` (
`idZamowienie` INT NOT NULL,
`dataZlozenia` DATE NOT NULL,
`dataRealizacji` DATE NULL,
`status` ENUM('przyjeto', 'w trakcie realizacji', 'zrealizowano') NOT NULL,
`dodatkowyOpis` VARCHAR(45) NULL,
`nrFaktury` VARCHAR(45) NULL,
`rabatZaPunkty` VARCHAR(45) NULL,
`Klient_idKlient` INT NOT NULL,
`Klient_Karta_idKarta` INT NULL,
`Pracownik_idPracownik` INT NOT NULL,
PRIMARY KEY (`idZamowienie`),
INDEX `fk_Zamowienie_Klient1_idx` (`Klient_idKlient` ASC, `Klient_Karta_idKarta` ASC),
INDEX `fk_Zamowienie_Pracownik1_idx` (`Pracownik_idPracownik` ASC),
CONSTRAINT `fk_Zamowienie_Klient1`
FOREIGN KEY (`Klient_idKlient` , `Klient_Karta_idKarta`)
REFERENCES `mydb`.`Klient` (`idKlient` , `Karta_idKarta`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_Zamowienie_Pracownik1`
FOREIGN KEY (`Pracownik_idPracownik`)
REFERENCES `mydb`.`Pracownik` (`idPracownik`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
SQL script execution finished: statements: 9 succeeded, 1 failed
Tabela Klient:
-- -----------------------------------------------------
-- Table `mydb`.`Klient`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Klient` (
`idKlient` INT NOT NULL,
`nazwisko` VARCHAR(45) NOT NULL,
`imie` VARCHAR(20) NOT NULL,
`e-mail` VARCHAR(30) NOT NULL,
`newsletter` TINYINT(1) NOT NULL,
`telefon` VARCHAR(15) NOT NULL,
`zarejestrowany` TINYINT(1) NOT NULL,
`login` VARCHAR(45) NULL,
`haslo` VARCHAR(45) NULL,
`Karta_idKarta` INT NULL,
`Adres_idAdres` INT NOT NULL,
PRIMARY KEY (`idKlient`),
INDEX `fk_Klient_Karta_idx` (`Karta_idKarta` ASC),
INDEX `fk_Klient_Adres1_idx` (`Adres_idAdres` ASC),
CONSTRAINT `fk_Klient_Karta`
FOREIGN KEY (`Karta_idKarta`)
REFERENCES `mydb`.`Karta` (`idKarta`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_Klient_Adres1`
FOREIGN KEY (`Adres_idAdres`)
REFERENCES `mydb`.`Adres` (`idAdres`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
Tabela pracownik:
-- -----------------------------------------------------
-- Table `mydb`.`Pracownik`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Pracownik` (
`idPracownik` INT NOT NULL,
`pesel` INT NOT NULL,
`stanowisko` ENUM('sprzedawca', 'magazynier') NOT NULL,
`nazwisko` VARCHAR(45) NOT NULL,
`imie` VARCHAR(20) NOT NULL,
`adres` VARCHAR(45) NOT NULL,
`Adres_idAdres` INT NOT NULL,
PRIMARY KEY (`idPracownik`),
INDEX `fk_Pracownik_Adres1_idx` (`Adres_idAdres` ASC),
CONSTRAINT `fk_Pracownik_Adres1`
FOREIGN KEY (`Adres_idAdres`)
REFERENCES `mydb`.`Adres` (`idAdres`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
Typy się zgadzają więc dlaczego nie działa?