如何从mysql数据库中的多个表中删除数据?

时间:2014-07-12 15:12:40

标签: mysql sql

我从数据库中删除数据时遇到问题。我有几张桌子由FK连接。我只是认为它与插入数据相同。但似乎不一样。

这是我的代码:

DELETE FROM uzivatel, inzerat_nabizim, lokalita_nabizim, pronajem_pokoj_nabizim, osoba_nabizim, typ_pokoje_nabizim, vybaveni_pokoj_nabizim, zarizeni_byt_nabizim
                     WHERE uzivatel.id_uzivatel = '$id_uzivatel'
                     AND inzerat_nabizim.id_uzivatel = uzivatel.id_uzivatel
                     AND pronajem_pokoj_nabizim.id_inzerat_nabizim = inzerat_nabizim.id_inzerat_nabizim
                     AND lokalita_nabizim.id_pronajem_pokoj_nabizim = pronajem_pokoj_nabizim.id_pronajem_pokoj_nabizim
                     AND osoba_nabizim.id_pronajem_pokoj_nabizim = pronajem_pokoj_nabizim.id_pronajem_pokoj_nabizim
                     AND typ_pokoje_nabizim.id_pronajem_pokoj_nabizim = pronajem_pokoj_nabizim.id_pronajem_pokoj_nabizim
                     AND vybaveni_pokoj_nabizim.id_pronajem_pokoj_nabizim = pronajem_pokoj_nabizim.id_pronajem_pokoj_nabizim
                     AND zarizeni_byt_nabizim.id_pronajem_pokoj_nabizim = pronajem_pokoj_nabizim.id_pronajem_pokoj_nabizim
                     AND lokalita_nabizim.id_pronajem_pokoj_nabizim = pronajem_pokoj_nabizim.id_pronajem_pokoj_nabizim;

任何帮助都将受到高度赞赏。

如果有不清楚的地方,请问我。

1 个答案:

答案 0 :(得分:2)

列出in the manual列出的可能性:

DELETE [LOW_PRIORITY] [QUICK] [IGNORE]
    tbl_name[.*] [, tbl_name[.*]] ...
    FROM table_references
    [WHERE where_condition]

DELETE [LOW_PRIORITY] [QUICK] [IGNORE]
    FROM tbl_name[.*] [, tbl_name[.*]] ...
    USING table_references
    [WHERE where_condition]

您正在使用未列出的DELETE FROM ... WHERE