sql >> Databáze >  >> RDS >> Sqlserver

Ještě jednou:Uložená procedura vs. TV-UDF

Myslím, že srovnáváte jablka a pomeranče a já jsem o tom alespoň nikdy neviděl žádné diskuze. Diskutuje se o tom, zda byste vůbec měli používat UDF, a diskutuje se o tom, zda byste měli používat uložené procedury nebo ad hoc SQL.

Vložený UDF je něco, co můžete použít v dotazu, a uložená procedura je něco, co můžete spustit, a většina vašich odrážek je důsledkem tohoto rozdílu.

Inline UDF je spíše jako pohled než uložená procedura. Parametrizované zobrazení, které lze použít v dotazech a může někdy se používá k urychlení .

Velmi rád bych viděl scénář, kde inline UDF a uložená procedura dělají totéž a mají odlišný výkon.

Pokud uložená procedura nikdy nic nezapíše, není v zamykání žádný rozdíl.

Nevím o lidech, ale pro mě je to všechno o diskuzi o uložené proceduře vs ad hoc sql. Preferuji uložené procedury, jiné preferuji ad hoc. Pokud chcete použít uživatelsky definované funkce místo toho procedur skončíte v ad hoc sql táboře.




  1. Jak získat kumulativní celkový počet uživatelů za den v MySQL

  2. Chyba příkazu sql:sloupec .. neexistuje

  3. Jak vytvořit počítané pole v dotazu Microsoft Access

  4. instalace Oracle Instantclient na Mac OS/X bez nastavení proměnných prostředí?