sql >> Databasteknik >  >> RDS >> Sqlserver

Kan jag söka efter begränsningar innan en radering i SQL Server?

Detta är en fråga som på ytan ser bra ut, men som har konsekvenser.

Först och främst måste du se till att efter att du har läst statusen för dessa relationer kan ingen ändra dem, så självklart måste du använda en transaktion och låsa raderna i fråga.

Då behöver du ett sätt att ta reda på vilka relationer du ska kontrollera, som jag ser i en kommentar här din fråga om vad som händer om någon senare lägger till en ny relation. Så du måste fråga efter schemat, eller kanske automatiskt generera den här koden från schemat, så att upptäcktsmekanismen bara behöver köras varje gång du ändrar schemat.

Nu, verkar undantaget du får verkligen så dyrt efter denna prövning?



  1. Performance Tuning SQL

  2. Varför är frågeparametrarna för många webbplatser (MySQL) mycket kryptiska långa heltal?

  3. Konvertera ett strängdatum till datetime i Oracle

  4. Funktionen lower() på internationella tecken i postgresql