SPEICHERVERFAHREN
FUNKTION (BENUTZERDEFINIERTE FUNKTION)
Verfahren kann 0, einzelne oder mehrere Werte zurückgeben
Funktion kann nur einen einzigen Wert zurückgeben
Prozedur kann Eingabe- und Ausgabeparameter haben
Funktion kann nur Eingabeparameter haben
Prozedur kann nicht aus einer Funktion heraus aufgerufen werden
Funktionen können von Prozeduren aufgerufen werden
Prozedur erlaubt sowohl Select- als auch DML-Anweisungen
Funktion erlaubt nur Select-Anweisung in ihr
Ausnahmen können durch einen try-catch-Block in einer Prozedur behandelt werden
Try-catch-Block kann nicht in einer Funktion verwendet werden
Wir können uns für die Verwaltung von Transaktionen im Verfahren
Wir können nicht für die Verwaltung von Transaktionen in Funktion gehen
Prozedur kann nicht in einer Select-Anweisung verwendet werden
Funktion kann in eine Select-Anweisung eingebettet werden
Prozedur kann den Zustand der Datenbank beeinflussen, d.h. sie kann CRUD-Operationen in der Datenbank durchführen
Die Funktion kann den Zustand der Datenbank nicht beeinflussen, d.h. sie kann keine CRUD-Operation an der Datenbank durchführen.
Verfahren kann temporäre Tabellen verwenden
Funktion kann keine temporären Tabellen verwenden
Verfahren kann die Parameter der Serverumgebung ändern
Die Funktion kann die Umgebungsparameter nicht verändern
Verfahren verwenden können, wenn wir stattdessen eine möglicherweise komplexe Gruppe von SQL-Anweisungen gruppieren wollen
Die Funktion kann verwendet werden, wenn ein Wert zur Verwendung in anderen SQL-Anweisungen berechnet und zurückgegeben werden soll.
6 Stimmen
venkatsqlinterview.blogspot.com/2011/05/
1 Stimmen
wiki.answers.com/Q/
1 Stimmen
searchsqlserver.techtarget.com/tip/
3 Stimmen
Wie sieht es mit der Geschwindigkeit aus? Wer führt die gleiche Abfrage schneller aus?
0 Stimmen
Es ist erwähnenswert, dass SP Transaktionen erstellen kann, während die Funktion nicht