我有关于从数据库中删除值的问题。我想删除多个表中的值。我有这个SQL代码:
SET FOREIGN_KEY_CHECKS=0;
DELETE uzivatel, inzerat_nabizim, lokalita_nabizim, pronajem_pokoj_nabizim, osoba_nabizim, typ_pokoje_nabizim, vybaveni_pokoj_nabizim, zarizeni_byt_nabizim
FROM uzivatel INNER JOIN inzerat_nabizim INNER JOIN lokalita_nabizim INNER JOIN pronajem_pokoj_nabizim
INNER JOIN osoba_nabizim INNER JOIN typ_pokoje_nabizim INNER JOIN vybaveni_pokoj_nabizim INNER JOIN zarizeni_byt_nabizim
WHERE uzivatel.id_uzivatel = 1
AND inzerat_nabizim.id_uzivatel = uzivatel.id_uzivatel
AND pronajem_pokoj_nabizim.id_inzerat_nabizim = inzerat_nabizim.id_inzerat_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
它工作但很糟糕。此代码删除我的所有记录(不仅仅是id_uzivatel等于“1”的记录)。唯一的例外是表“uzivatel” - 代码只删除了它所要求的记录。
有什么想法吗?
任何帮助都将受到高度赞赏。