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

Slet sætning i SQL er meget langsom

Ting, der kan få en sletning til at gå langsomt:

  • sletter en masse poster
  • mange indekser
  • manglende indekser på fremmednøgler i underordnede tabeller. (tak til @CesarAlvaradoDiaz for at nævne dette i kommentarerne)
  • deadlocks og blokering
  • triggere
  • kaskade sletning (de ti overordnede poster, du sletter, kan betyde, at millioner af underordnede poster bliver slettet)
  • Transaktionslog skal vokse
  • Mange fremmednøgler at kontrollere

Så dine valg er at finde ud af, hvad der blokerer, og rette det eller køre sletningerne i off timer, når de ikke vil forstyrre den normale produktionsbelastning. Du kan køre sletningen i batches (nyttigt hvis du har triggere, kaskadesletning eller et stort antal poster). Du kan droppe og genskabe indekserne (bedst, hvis du også kan gøre det uden for timer).



  1. node-oracledb fejl ved udførelse af lagret procedure NJS-012

  2. MySql og Glassfish:Fejl ved tildeling af en forbindelse

  3. Sortering af resultaterne af en mysql-forespørgsel

  4. Automatisk udvidelse af en Python-liste med formateret output