sql >> Databáze >  >> RDS >> Sqlserver

Mazání souvisejících řádků ve vztahu Many-to-Many

Váš požadavek nedává smysl

Řidiči jako entity existují odděleně od Cars. Auta může řídit mnoho řidičů, řidiči mohou řídit mnoho aut. To je důvod, proč máte tabulku many-man.

Všimněte si bit "řidiči mohou řídit mnoho aut". To znamená, že pokud odstraníte řádek Drivers, musíte odstranit další řádky v CarDrivers.

Pokud stále Chcete-li to udělat, potřebujete spoušť na CarDrivers. CASCADE from Drivers to CarDrivers za vás odstraní další řádky CarDrivers. Nepamatuji si ani výchozí chování pro rekurzi spouštěče.

Jaký nepořádek.

Poznámka:toto téměř dává smysl, pokud máte jedinečnost v jednom ze sloupců v tabulce many-many, pak by to měl být cizí klíč mezi auty a řidiči (Unique on Car znamená „nejvýše jeden řidič na auto“ znamená sloupec FK s hodnotou NULL v Cars)



  1. jak získat jednu hodnotu z pole v codeigniter

  2. Kompatibilita verze Oracle Client a ODP.NET

  3. Problém SQL:Použití CONTAINS() nefunguje, ale LIKE funguje dobře

  4. Mohu provést výběr, aktualizaci a odstranění mysql v jednom dotazu?