Ошибка 1826 ауди

thank you for your time.
I am trying to build a database with with the following instructions

T1-Hotel (hotelNo, hotelName, city)
T2-Room (roomNo, hotelNo, type, price)
T3-Guest (guestNo, guestName, guestAddress)
T4-Booking (hotelNo, guestNo, dateFrom, dateTo, roomNo)

I get a Constraint duplication error but I cant tell there is a duplication in the schema.

CREATE TABLE `hotel_booking`.`Booking` (
    `hotelNo` VARCHAR(5) NOT NULL,
    `guestNo` VARCHAR(5) NOT NULL,
    `datefFrom` DATE NOT NULL,
    `dateTo` DATE NULL,
    `roomNo` VARCHAR(5) NULL,
    PRIMARY KEY (`hotelNo`, `guestNo`, `datefFrom`),
    INDEX `guestNo_idx` (`guestNo` ASC) VISIBLE,
    INDEX `roomNo_idx` (`roomNo` ASC) VISIBLE,
    CONSTRAINT `hotelNo`
        FOREIGN KEY (`hotelNo`)
        REFERENCES `hotel_booking`.`Hotel` (`hotelNo`)
        ON DELETE NO ACTION
        ON UPDATE NO ACTION,
    CONSTRAINT `guestNo`
        FOREIGN KEY (`guestNo`)
        REFERENCES `hotel_booking`.`Guest` (`guestNo`)
        ON DELETE NO ACTION
        ON UPDATE NO ACTION,
    CONSTRAINT `roomNo`
        FOREIGN KEY (`roomNo`)
        REFERENCES `hotel_booking`.`Room` (`roonNo`)
        ON DELETE NO ACTION
        ON UPDATE NO ACTION);

I get the following error ERROR 1826: Duplicate foreign key constraint name ‘hotelNo’
What is wrong and how it can be corrected?Columns and keys

foreign keys

Coding that i used to altar my table and change it.

ALTER TABLE `the-challenge`.`klant` 
ADD CONSTRAINT `resultaat`
  FOREIGN KEY (`resultaatid`)
  REFERENCES `the-challenge`.`resultaat` (`id`)
  ON DELETE NO ACTION
  ON UPDATE NO ACTION;

The results when trying to apply the code:
Operation failed: There was an error while applying the SQL script to the database.
Executing:

ALTER TABLE `the-challenge`.`klant` 
ADD CONSTRAINT `resultaat`
  FOREIGN KEY (`resultaatid`)
  REFERENCES `the-challenge`.`resultaat` (`id`)
  ON DELETE NO ACTION
  ON UPDATE NO ACTION;

ERROR 1826: Duplicate foreign key constraint name ‘resultaat’

SQL Statement:

ALTER TABLE `the-challenge`.`klant` 
ADD CONSTRAINT `resultaat`
  FOREIGN KEY (`resultaatid`)
  REFERENCES `the-challenge`.`resultaat` (`id`)
  ON DELETE NO ACTION
  ON UPDATE NO ACTION

Operation failed: There was an error while applying the SQL script to the database.
Executing:
ALTER TABLE `xq`.`manageinfo` 
ADD CONSTRAINT `idmanagetype`
  FOREIGN KEY (`idmanagetype`)
  REFERENCES `xq`.`managetype` (`idmanagetype`)
  ON DELETE NO ACTION
  ON UPDATE NO ACTION;

ERROR 1826: Duplicate foreign key constraint name 'idmanagetype'
SQL Statement:
ALTER TABLE `xq`.`manageinfo` 
ADD CONSTRAINT `idmanagetype`
  FOREIGN KEY (`idmanagetype`)
  REFERENCES `xq`.`managetype` (`idmanagetype`)
  ON DELETE NO ACTION
  ON UPDATE NO ACTION

1826 did not cancel the thread. …This one. .
Reason: It is because I have added a foreign key index named idmanagetype before. If it is repeated, it will report an error. I will add a 1 to the name and succeed.

ALTER TABLE `xq`.`manageinfo` 
ADD INDEX `idmanagetype1_idx` (`idmanagetype` ASC) VISIBLE;
;
ALTER TABLE `xq`.`manageinfo` 
ADD CONSTRAINT `idmanagetype1`
  FOREIGN KEY (`idmanagetype`)
  REFERENCES `xq`.`managetype` (`idmanagetype`)
  ON DELETE NO ACTION
  ON UPDATE NO ACTION;

GNOM003

0 / 0 / 0

Регистрация: 26.12.2019

Сообщений: 11

1

30.05.2020, 15:01. Показов 14156. Ответов 3

Метки нет (Все метки)


Студворк — интернет-сервис помощи студентам

Импортировал модель БД в скрипт и тут такая ошибка:

Executing SQL script in server
ERROR: Error 1826: Duplicate foreign key constraint name ‘aircraft_id’
SQL Code:

MySQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
        -- -----------------------------------------------------
        -- Table `RedWingsDatabase`.`Control`
        -- -----------------------------------------------------
        CREATE TABLE IF NOT EXISTS `RedWingsDatabase`.`Control` (
          `id` INT NOT NULL,
          `commander_id` INT NULL,
          `aircraft_id` INT NULL,
          `start_date` DATE NULL,
          `end_date` DATE NULL,
          PRIMARY KEY (`id`),
          INDEX `commander_id_idx` (`commander_id` ASC) VISIBLE,
          INDEX `aircraft_id_idx` (`aircraft_id` ASC) VISIBLE,
          CONSTRAINT `commander_id`
            FOREIGN KEY (`commander_id`)
            REFERENCES `RedWingsDatabase`.`Aircraft commander` (`id`)
            ON DELETE NO ACTION
            ON UPDATE NO ACTION,
          CONSTRAINT `aircraft_id`
            FOREIGN KEY (`aircraft_id`)
            REFERENCES `RedWingsDatabase`.`Aircraft` (`id`)
            ON DELETE NO ACTION
            ON UPDATE NO ACTION)
        ENGINE = InnoDB

SQL script execution finished: statements: 10 succeeded, 1 failed

Fetching back view definitions in final form.
Nothing to fetch



0



411 / 365 / 142

Регистрация: 09.04.2011

Сообщений: 1,043

30.05.2020, 16:23

2

какая у вас версия mysql?



0



0 / 0 / 0

Регистрация: 26.12.2019

Сообщений: 11

30.05.2020, 16:41

 [ТС]

3

Цитата
Сообщение от retvizan
Посмотреть сообщение

какая у вас версия mysql?

8.0



0



retvizan

411 / 365 / 142

Регистрация: 09.04.2011

Сообщений: 1,043

30.05.2020, 18:13

4

Лучший ответ Сообщение было отмечено GNOM003 как решение

Решение

уберите явное именование ограничения
вместо:

MySQL
1
2
3
4
5
CONSTRAINT `aircraft_id`
FOREIGN KEY (`aircraft_id`)
REFERENCES `RedWingsDatabase`.`Aircraft` (`id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)

нужно:

MySQL
1
2
3
4
FOREIGN KEY (`aircraft_id`)
REFERENCES `RedWingsDatabase`.`Aircraft` (`id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)

или вместо `aircraft_id` используйте уникальное имя в пределах базы



1



Operation failed: There was an error while applying the SQL script to the database.
Executing:
ALTER TABLE `xq`.`manageinfo` 
ADD CONSTRAINT `idmanagetype`
  FOREIGN KEY (`idmanagetype`)
  REFERENCES `xq`.`managetype` (`idmanagetype`)
  ON DELETE NO ACTION
  ON UPDATE NO ACTION;

ERROR 1826: Duplicate foreign key constraint name 'idmanagetype'
SQL Statement:
ALTER TABLE `xq`.`manageinfo` 
ADD CONSTRAINT `idmanagetype`
  FOREIGN KEY (`idmanagetype`)
  REFERENCES `xq`.`managetype` (`idmanagetype`)
  ON DELETE NO ACTION
  ON UPDATE NO ACTION

1826 г. — Нить не отменялась. …Вот этот. .
Причина: я уже добавлял индекс внешнего ключа с именем idmanagetype раньше. Если он будет повторяться, будет сообщено об ошибке. Я добавил 1 после имени и успешно.

ALTER TABLE `xq`.`manageinfo` 
ADD INDEX `idmanagetype1_idx` (`idmanagetype` ASC) VISIBLE;
;
ALTER TABLE `xq`.`manageinfo` 
ADD CONSTRAINT `idmanagetype1`
  FOREIGN KEY (`idmanagetype`)
  REFERENCES `xq`.`managetype` (`idmanagetype`)
  ON DELETE NO ACTION
  ON UPDATE NO ACTION;

Понравилась статья? Поделить с друзьями:
  • Ошибка 184 амд радеон
  • Ошибка 182 змз 406
  • Ошибка 184 amd radeon что делать
  • Ошибка 182 газель 406 инжектор
  • Ошибка 18253 шкода октавия а5