errno: 150 Ограничение внешнего ключа неправильно сформировано при создании таблицы

У меня есть следующий оператор SQL, который дает мне ошибку

CREATE TABLE EventosCalendario (
  EvenCalen_idEvenCalen INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  EvenCalen_inici DATE,
  EvenCalen_fin DATE,
  TipEven_idTipEven INTEGER NOT NULL,
  Tit_IdTitulaciones INTEGER NULL,
  AnoAc_idannoacademico INTEGER NOT NULL,
  EvenCalen_comentario VARCHAR(250) NULL,
  EvenCalen_fechaact TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY(EvenCalen_idEvenCalen),
  INDEX TipEven_idTipEven USING BTREE (TipEven_idTipEven),
  INDEX AnoAc_idannoacademico USING BTREE (AnoAc_idannoacademico),
INDEX Tit_IdTitulaciones USING BTREE (Tit_IdTitulaciones),
  FOREIGN KEY (TipEven_idTipEven) REFERENCES TipoEvento (TipEven_idTipEven) ON DELETE  RESTRICT ON UPDATE NO ACTION,
  FOREIGN KEY (Tit_IdTitulaciones) REFERENCES titulaciones (Tit_IdTitulaciones) ON DELETE  RESTRICT ON UPDATE NO ACTION,
  FOREIGN KEY (AnoAc_idannoacademico) REFERENCES anosacademicos (AnoAc_idannoacademico) ON DELETE  RESTRICT ON UPDATE NO ACTION
);

Есть идеи?

Большое спасибо.

0
задан 28.11.2019, 18:09
1 ответ

Только тебе не хватало решения CONSTRAINT непрерывно именем, что tendrГЎ ключ forГЎnea (эти имена, должно быть, - Гєnicos)

Просто добавляет, что CONSTRAINT FK1 перед каждыми FOREIGN KEY

у тебя осталось бы Решение что-либо подобное:

CREATE TABLE EventosCalendario(
  EvenCalen_idEvenCalen INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  EvenCalen_inici DATE,
  EvenCalen_fin DATE,
  TipEven_idTipEven INTEGER NOT NULL,
  Tit_IdTitulaciones INTEGER NULL,
  AnoAc_idannoacademico INTEGER NOT NULL,
  EvenCalen_comentario VARCHAR(250) NULL,
  EvenCalen_fechaact TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY(EvenCalen_idEvenCalen),
  INDEX TipEven_idTipEven USING BTREE (TipEven_idTipEven),
  INDEX AnoAc_idannoacademico USING BTREE (AnoAc_idannoacademico),
INDEX Tit_IdTitulaciones USING BTREE (Tit_IdTitulaciones),
  CONSTRAINT `FK1` FOREIGN KEY (TipEven_idTipEven) REFERENCES TipoEvento (TipEven_idTipEven) ON DELETE  RESTRICT ON UPDATE NO ACTION,
  CONSTRAINT `FK2` FOREIGN KEY (Tit_IdTitulaciones) REFERENCES titulaciones (Tit_IdTitulaciones) ON DELETE  RESTRICT ON UPDATE NO ACTION,
  CONSTRAINT `FK3` FOREIGN KEY (AnoAc_idannoacademico) REFERENCES anosacademicos (AnoAc_idannoacademico) ON DELETE  RESTRICT ON UPDATE NO ACTION
);

оставил Тебе полный код здесь:

https://dbfiddle.uk/? rdbms=mariadb_10.2& fiddle=6dd613de6e620e8805e198864d6e9b79

0
ответ дан 01.12.2019, 10:40