无法删除或更新父行:外键约束失败。 MagicDraw表错误

时间:2019-02-28 20:49:35

标签: mysql sql phpmyadmin magic-draw

我有一个任务,我必须在MagicDraw中创建表,然后生成MySQL代码。我将生成的代码粘贴到phpMyAdmin中的SQL代码部分,它显示了一个错误:

SQL查询:

DROP TABLE IF EXISTS LogistikosCentras;

MySQL答案:

  

#1217-无法删除或更新父行:外键约束失败

这些是我的桌子:

Tables

这是我的一些代码:

CREATE TABLE LogistikosCentras
(
    pavadinimas varchar (255) NOT NULL,
    adresas varchar (255) NOT NULL,
    telefonas int NOT NULL,
    el_pastas varchar (255) NOT NULL,
    id_LogistikosCentras integer NOT NULL,
    PRIMARY KEY(id_LogistikosCentras)
);

CREATE TABLE SiuntosPervezimoTarnyba
(
    pavadinimas varchar (255) NOT NULL,
    transportoPriemonesTalpa double precision NOT NULL,
    transportoPriemoniuKiekis int NOT NULL,
    transportoPriemone varchar (15) NOT NULL,
    pristatymoGreitis varchar (8) NOT NULL,
    id_SiuntosPervezimoTarnyba integer NOT NULL,
    CHECK(transportoPriemone in ('sunkvezimis', 'laivas', 'lektuvas', 
'lengvojiMasina')),
    CHECK(pristatymoGreitis in ('valandos', 'dienos')),
    PRIMARY KEY(id_SiuntosPervezimoTarnyba)
);

CREATE TABLE Darbuotojas
(
    vardas varchar (255) NOT NULL,
    pavarde varchar (255) NOT NULL,
    tabelio_nr char (255) NOT NULL,
    pareigos char (10) NOT NULL,
    id_Darbuotojas integer NOT NULL,
    fk_LogistikosCentrasid_Logistikoscentras integer NOT NULL,
    CHECK(pareigos in ('buhalteris', 'krovejas')),
    PRIMARY KEY(id_Darbuotojas, fk_LogistikosCentrasid_Logistikoscentras),
    CONSTRAINT dirba FOREIGN KEY(fk_LogistikosCentrasid_Logistikoscentras) 
REFERENCES LogistikosCentras (id_LogistikosCentras)
);

1 个答案:

答案 0 :(得分:0)

我只是颠倒了删除表的请求的顺序,并且成功了。