sql >> Databasteknik >  >> RDS >> Mysql

Ta bort från flera tabeller med främmande begränsningar

Det enklaste sättet skulle vara att ta bort från varje tabell individuellt:

-- Remove all connections from A which reference
-- the B-rows you want to remove
DELETE FROM A_has_B
WHERE B_id IN (1,2,4);

-- Remove all connections from C which reference
-- the B-rows you want to remove
DELETE FROM C_has_B
WHERE B_id IN (1,2,4);

-- Finally remove the B-rows
DELETE FROM B
WHERE B_id IN (1,2,4);

MySQL låter dig också ta bort från flera tabeller i ett uttalande. Men det finns inget sätt att kontrollera ordningen på raderingarna. Från manualen :



  1. Oracle-uppdateringsfråga för att uppdatera poster i sekventiell ordning

  2. Finns det en Go Mysql-drivrutin som stöder flera satser inom en enda sträng?

  3. Extrahera datum från string oracle

  4. Fatalt fel:Anrop till odefinierad funktion session_register()