Összekapcsolt táblák esetén, ha egy táblából törlünk, akkor a kapcsolt táblákban hozzá kapcsolódó rekordok törléséről is gondoskodni kell.
Egyik módja a feladat megoldásának, hogy a DELETE parancs után felsoroljuk a táblákat, amelyekből törölni akarunk, és a FROM után megadjuk a WHERE záradékban használt táblák nevét A megfelelő feltétételek megadásával gondoskodhatunk, hogy mindenhol az összetartozó rekordok kerüljenek törlésre.
A WHERE záradékban megadott feltételekben kell a saját és az idegen kulcsok összekapcsolásáról, és ha nem akarunk minden összetartozó rekordot törölni, akkor a kívánt rekordok kiválasztásáról.
A parancs általános formája:
DELETE
Táblák amelyekből törölni akarunk
FROM
Táblák amelyek a WHERE záradékban szerepelnek
WHERE
Feltételek
Példa: A „kiraly” nevű felhasználó, megrendeléseinek és a rendelt termékeinek törlése
Forráskód
<?php
...
$SelectStr = "Delete rendeles_tabla, felhasznalok_tabla, rendelt_termek_tabla
FROM rendeles_tabla, felhasznalok_tabla, rendelt_termek_tabla
WHERE felhasznalok_tabla.id = rendeles_tabla.Felhasznalo_id
and rendeles_tabla.id = rendelt_termek_tabla.Rendeles_id
and felhasznalok_tabla.FName = 'kiraly'
";
if (!mysqli_query($MySqliLink,$SelectStr)) {
die("MySqli hiba (" .mysqli_errno($MySqliLink). "): " . mysqli_error($MySqliLink));
}
...
?>
A lekérdezett táblák törlés után (phpMyAdmin):

1. felhasznalok_tabla

2. rendeles_tabla

3. rendelt_termek_tabla