To jsou ty nejlepší a nejúčinnější. Pro produkční dotazy bych použil 2
.
Jediné další způsoby, které mě napadají, by byly (IMO) vhodné pouze pro rychlé a nečisté odstranění dat v testovacím prostředí (a vyhnout se nutnosti analyzovat správné pořadí)
- Zakažte všechny FK vymazání požadovaných dat a poté FK znovu povolte. To je neefektivní, protože je třeba je znovu povolit
WITH CHECK
aby nedošlo k ponechání FK v nedůvěryhodném stavu, což znamená, že všechna uchovaná data je třeba znovu ověřit. - Vypsat všechny
DELETE
příkazy na postižených tabulkách v libovolném pořadí a spusťte dávku tolikrát, kolikrát je potřeba, dokud nebude úspěšná bez chyb FK.