Das Hauptunterschied zwischen gespeicherter Prozedur und Funktion ist das Eine gespeicherte Prozedur ist eine Gruppe von SQL-Anweisungen, die immer wieder auf dem RDBMS ausgeführt werden kann, während eine Funktion eine Gruppe von Anweisungen ist, die in einer Programmiersprache geschrieben wurden, die immer wieder ausgeführt werden kann.
Ein relationales Datenbankverwaltungssystem (RDBMS) ist ein Datenbankverwaltungssystem, das auf dem relationalen Modell basiert. Es speichert Daten in Datenbanken. Jede Datenbank besteht aus mehreren Tabellen, die aufeinander bezogen sind. RDBMS hilft beim einfachen Speichern, Bearbeiten und Abrufen von Daten in der Datenbank. Eine gespeicherte Prozedur kann in RDBMS verwendet werden. Es ist eine wiederverwendbare Gruppe von SQL-Anweisungen. Andererseits ist eine Funktion ein wiederverwendbarer Satz von Anweisungen, die in einer Programmiersprache geschrieben sind, die eine bestimmte Aufgabe ausführt. Programmiersprachen wie C, C ++, Python, Java, PHP, Perl usw. ermöglichen es dem Programmierer, Funktionen zu erstellen.
1. Was ist eine gespeicherte Prozedur?
- Definition, Beispiele
2. Was ist eine Funktion?
- Definition, Beispiele
3. Unterschied zwischen gespeicherter Prozedur und Funktion
- Vergleich der wichtigsten Unterschiede
Funktion, gespeicherte Prozedur
Eine gespeicherte Prozedur besteht aus einer Reihe von SQL-Anweisungen zum Ausführen einer Aufgabe in RDBMS. Wenn es eine Reihe von SQL-Abfragen gibt, die erneut verwendet werden sollen, kann der Programmierer eine gespeicherte Prozedur schreiben. Dann kann er es aufrufen und ausführen. Es ist auch möglich, Parameter an die gespeicherte Prozedur zu übergeben, um eine Aufgabe auszuführen.
Abbildung 1: Gespeicherte Prozedur
Die Syntax der gespeicherten Prozedur lautet wie folgt.
CREATE PROCEDURE Prozedurname
WIE
SQL-Anweisung
GEHEN;
Die folgende Abfrage wird zum Ausführen der Prozedur verwendet,
EXEC Prozedurname;
Die folgende SQL-Anweisung erstellt einen Namen einer gespeicherten Prozedur "SelectStudents". Es wählt die Datensätze aller Schüler in der Schüler-Tabelle aus.
PROZEDUR ERSTELLEN SelectStudents
Wie
WÄHLEN Sie * VON Schülern aus
GEHEN;
Die gespeicherte Prozedur kann mit dem folgenden Befehl ausgeführt werden,
EXEC SelectStudents;
Die gespeicherte Prozedur kann auch Parameter akzeptieren. Unterhalb der SQL-Anweisung erstellen Sie eine gespeicherte Prozedur, die aus der Tabelle "Student" den angegebenen Namen auswählt.
PROZEDUR ERSTELLEN SelectStudents @Name varchar (50)
WIE
SELECT * FROM Schüler WHERE Name = @Name
GEHEN;
Die folgende Anweisung wird zum Ausführen der Prozedur verwendet.
EXEC SelectStudents Name = "Ann";
Es werden alle Schüler mit dem Namen "Ann" in der Schülertabelle ausgewählt.
Eine Funktion besteht aus Anweisungen, um eine bestimmte Aufgabe auszuführen. Fast alle Programmiersprachen wie C ++, C, Java und Python ermöglichen dem Programmierer das Schreiben von Funktionen. Mit einer Funktion können dieselben Anweisungen immer wieder verwendet werden. Außerdem organisiert es den gesamten Code.
Abbildung 2: Die Hauptfunktion in C
Eine Funktion hat die folgende Syntax.
return_type Funktionsname (Parameterliste)
// Anweisungen innerhalb der Funktion
Es kann Funktionen geben, die Parameter akzeptieren und keine Parameter akzeptieren. Siehe unten Funktion.
void displayMessage ()
prinf ("Hallo Welt \ n");
Oben ist eine einfache C-Funktion. Es werden keine Parameter erhalten. Es gibt einfach die Meldung "Hello World" an die Konsole aus. Diese Funktion gibt keinen Wert zurück. Daher ist der Rückgabetyp ungültig.
Eine Funktion kann auch Parameter akzeptieren. Siehe das unten stehende Beispiel.
int calArea (int width, int length)
int Bereich = Breite * Länge;
Rückkehrbereich;
Das obige ist eine Funktion namens calArea. Es erhält zwei ganzzahlige Parameter, die als Breite und Länge bezeichnet werden. Innerhalb der Funktion wird eine lokale Variable namens "area" erstellt. Es wird mit der Multiplikation von zwei Werten zugewiesen. Zum Schluss wird die berechnete Fläche zurückgegeben. Es ist eine ganze Zahl. Daher ist der Rückgabetyp int.
Eine gespeicherte Prozedur ist eine Gruppe von SQL-Anweisungen, die eine bestimmte Aufgabe im Relational Database Management-System ausführen können. Eine Funktion ist ein in sich geschlossenes Codemodul, das eine bestimmte Aufgabe ausführt.
Darüber hinaus wird eine gespeicherte Prozedur in RDBMS verwendet, während eine Funktion in einer beliebigen Programmiersprache wie C, C ++ und Java verwendet wird.
Der Unterschied zwischen gespeicherter Prozedur und Funktion besteht darin, dass eine gespeicherte Prozedur eine Gruppe von SQL-Anweisungen ist, die immer wieder auf dem RDBMS ausgeführt werden kann, während eine Funktion eine Gruppe von Anweisungen ist, die in einer Programmiersprache geschrieben wurden, die immer wieder ausgeführt werden kann. Kurz gesagt ist eine gespeicherte Prozedur eine wiederverwendbare Gruppe von SQL-Anweisungen, während eine Funktion eine wiederverwendbare Gruppe von Anweisungen ist, die in einer Programmiersprache geschrieben sind.
1. „Gespeicherte SQL-Prozeduren für SQL Server“. Online-Tutorials von W3Schools, hier verfügbar.
2. „C-Funktionen“. Www.tutorialspoint.com, Tutorials Point, hier verfügbar.
1. "Процедур" Von Muug1 - Eigene Arbeit, CC BY-SA 4.0) über Commons Wikimedia
2. "Notepad ++ v6.9.2 unter Windows 10, mit Quellcode" Hello World "in der Programmiersprache C, mit Funktionsnamen Autokomplettierung" Von Notepad ++ v6.9.2 ScreenshotSelbstfotografierte, abgeleitete Arbeit (Public Domain) über Commons Wikimedia