De grootste verschil tussen opgeslagen procedure en functie is dat een opgeslagen procedure is een set SQL-instructies die keer op keer op de RDBMS kan worden uitgevoerd, terwijl een functie een reeks instructies is die zijn geschreven met behulp van een programmeertaal die steeds opnieuw kan worden uitgevoerd.
Een relationeel databasebeheersysteem (RDBMS) is een databasebeheersysteem dat is gebaseerd op het relationele model. Het slaat gegevens op in databases. Elke database bestaat uit meerdere tabellen die aan elkaar gerelateerd zijn. RDBMS helpt om eenvoudig gegevens in de database op te slaan, te manipuleren en op te halen. Een opgeslagen procedure kan worden gebruikt op RDBMS. Het is een herbruikbare reeks SQL-instructies. Aan de andere kant is een functie een herbruikbare set instructies geschreven in een programmeertaal die een specifieke taak uitvoert. Programmeertalen zoals C, C ++, Python, Java, PHP, Perl enz. Stellen de programmeur in staat om functies te creëren.
1. Wat is een opgeslagen procedure
- Definitie, voorbeelden
2. Wat is een functie
- Definitie, voorbeelden
3. Verschil tussen opgeslagen procedure en functie
- Vergelijking van belangrijke verschillen
Functie, opgeslagen procedure
Een opgeslagen procedure is een set SQL-instructies om een taak uit te voeren op RDBMS. Als er een set SQL-query's is die opnieuw moet worden gebruikt, kan de programmeur een opgeslagen procedure schrijven. Dan kan hij het noemen en het uitvoeren. Het is ook mogelijk om parameters door te geven aan de opgeslagen procedure om een taak uit te voeren.
Figuur 1: Opgeslagen procedure
De syntaxis van de opgeslagen procedure is als volgt.
CCEER PROCEDURE procedure_naam
ZOALS
sql-verklaring
GAAN;
De volgende query wordt gebruikt om de procedure uit te voeren,
EXEC procedure_naam;
De volgende SQL-instructie maakt een opgeslagen procedurenaam "SelectStudents". Het selecteert de records van alle studenten in de studententabel.
CREËER PROCEDURE SelectStudents
Zoals
SELECTEER * FROM Studenten
GAAN;
De opgeslagen procedure kan worden uitgevoerd met behulp van de volgende opdracht,
EXEC SelectStudents;
De opgeslagen procedure kan ook parameters accepteren. Onderstaande SQL-instructie maak een opgeslagen procedure die studenten van de gegeven naam uit de studententabel selecteert.
CREËER PROCEDURE SelectStudents @Name varchar (50)
ZOALS
SELECT * FROM Students WHERE Name = @Name
GAAN;
De volgende verklaring wordt gebruikt om de procedure uit te voeren.
EXEC SelectStudents Name = "Ann";
Het selecteert alle studenten met de naam "Ann" in de Studententabel.
Een functie is een set instructies om een specifieke taak uit te voeren. Vrijwel alle programmeertalen zoals C ++, C, Java en Python staan de programmeur toe om functies te schrijven. Met een functie kan dezelfde set instructies steeds opnieuw worden gebruikt. Bovendien organiseert het de volledige code.
Figuur 2: De hoofdfunctie in C
Een functie heeft de volgende syntaxis.
return_type function_name (parameterlijst)
// statements binnen de functie
Er kunnen functies zijn die parameters accepteren en geen parameters accepteren. Raadpleeg de onderstaande functie.
void displayMessage ()
prinf ("Hallo wereld \ n");
Hierboven ziet u een eenvoudige C-functie. Het krijgt geen parameters. Het drukt gewoon het bericht "Hallo wereld" af op de console. Deze functie retourneert geen waarde. Daarom is het retourtype ongeldig.
Een functie kan ook parameters accepteren. Raadpleeg het onderstaande voorbeeld.
int calArea (int width, int length)
int gebied = breedte * lengte;
terugkeer gebied;
Het bovenstaande is een functie met de naam calArea. Het krijgt twee integer-parameters, de breedte en de lengte. In de functie wordt een lokale variabele met de naam 'gebied' gemaakt. Het is toegewezen met de vermenigvuldiging van twee waarden. Ten slotte wordt het berekende gebied geretourneerd. Het is een geheel getal. Daarom is het retourneertype int.
Een opgeslagen procedure is een groep SQL-instructies die een bepaalde taak op het relationele databasebeheersysteem kunnen uitvoeren. Een functie is een op zichzelf staande module met code die een specifieke taak uitvoert.
Verder wordt een opgeslagen procedure gebruikt in RDBMS terwijl een functie wordt gebruikt in elke programmeertaal zoals C, C ++ en Java enz..
Het verschil tussen de opgeslagen procedure en de functie is dat een opgeslagen procedure een set SQL-instructies is die keer op keer op de RDBMS kan worden uitgevoerd, terwijl een functie een set instructies is die zijn geschreven met behulp van een programmeertaal die steeds opnieuw kan worden uitgevoerd. Kort gezegd, een opgeslagen procedure is een herbruikbare set SQL-instructies, terwijl een functie een herbruikbare set instructies is, geschreven in een programmeertaal.
1. "SQL-stored procedures voor SQL Server." W3Schools Online Web Tutorials, hier beschikbaar.
2. "C Functies." Www.tutorialspoint.com, Tutorials Point, hier beschikbaar.
1. "Процедур" door Muug1 - Eigen werk, CC BY-SA 4.0) via Commons Wikimedia
2. "Notepad ++ v6.9.2 op Windows 10, met" Hello World "-broncode in C-programmeertaal, met functienaam autocompletion" By Notepad ++ v6.9.2 ScreenshotSelf-photographed, derivative work (Public Domain) via Commons Wikimedia