sql >> Databasteknik >  >> RDS >> Sqlserver

Än en gång:lagrad procedur kontra TV-UDF

Jag tror att du jämför äpplen och apelsiner och jag har i alla fall aldrig sett några diskussioner om detta. Det finns diskussioner om du ska använda UDF överhuvudtaget och det finns diskussioner om du ska använda lagrade procedurer eller ad hoc SQL.

En inline UDF är något du kan använda i en fråga och en lagrad procedur är något du kan utföra och de flesta av dina punktpunkter är en konsekvens av den skillnaden.

En inline UDF är mer som en vy än en lagrad procedur. En parametriserad vy som kan användas i frågor och kan används ibland för att påskynda saker och ting .

Jag skulle väldigt gärna vilja se ett scenario där en inline UDF och lagrad procedur gör samma sak och har olika prestanda.

Om den lagrade proceduren aldrig skriver något är det ingen skillnad i låsning.

Vet inte om människor men för mig handlar det om diskussionen om lagrad procedur vs ad hoc sql. Jag föredrar lagrade procedurer andra föredrar ad hoc. Om du vill använda användardefinierade funktioner istället av procedurer hamnar du i ad hoc sql-lägret.




  1. Postgres CTE:typtecken varierande(255)[] i icke-rekursiv term men typtecken varierande[] totalt sett

  2. Psql COPY med begränsning misslyckas

  3. PHP CRUD Skapa, redigera, uppdatera och ta bort inlägg med MySQL-databas

  4. Hur uppgraderar jag osCommerce Database från v2.2 till v2.3