sql >> Database teknologi >  >> RDS >> Sqlserver

SQL-server - rekursiv sletning

Det er de bedste og mest effektive. Til produktionsforespørgsler ville jeg bruge 2 .

De eneste andre måder, jeg kan komme i tanke om, ville (IMO) kun være egnet til hurtig og beskidt fjernelse af data i et testmiljø (undgå behovet for at analysere den korrekte rækkefølge)

  1. Deaktiver alle FK'er, slet de ønskede data, og aktiver derefter FK'erne igen. Dette er ineffektivt, da de skal genaktiveres WITH CHECK for at undgå at efterlade FK'erne i en tilstand, der ikke er tillid til, hvilket betyder, at alle bevarede data skal genvalideres.
  2. Læs alle DELETE sætninger på berørte tabeller i vilkårlig rækkefølge og kør batchen så mange gange som nødvendigt, indtil det lykkes uden FK-fejl.


  1. Hvordan Zend DB administrerer databaseforbindelser

  2. Brug af Jquery Ajax til at hente data fra Mysql

  3. JQuery KeyUp Live Search. Hvordan?

  4. Hvordan kan jeg finde et af mange mulige mønstre blandt en enkelt mySQL-indgang? Mere indeni