Forskjellen mellom lagret prosedyre og funksjon

De hovedforskjell mellom lagret prosedyre og funksjon er det en lagret prosedyre er et sett med SQL-setninger som kan utføres på RDBMS igjen og igjen mens en funksjon er et sett med instruksjoner som er skrevet med et programmeringsspråk som kan utføres igjen og igjen.

Et relasjonsdatabasebehandlingssystem (RDBMS) er et databasebehandlingssystem som er basert på relasjonsmodellen. Det lagrer data i databaser. Hver database består av flere tabeller, som er relatert til hverandre. RDBMS hjelper til med å lagre, manipulere og hente data i databasen enkelt. En lagret prosedyre kan brukes på RDBMS. Det er et gjenbrukbart sett med SQL-setninger. På den annen side er en funksjon et gjenbrukbart sett med instruksjoner skrevet i et programmeringsspråk som utfører en bestemt oppgave. Programmeringsspråk som C, C + +, Python, Java, PHP, Perl etc. lar programmerer å lage funksjoner.

Nøkkelområder dekket

1. Hva er en lagret prosedyre
      - Definisjon, eksempler
2. Hva er en funksjon
      - Definisjon, eksempler
3. Forskjellen mellom lagret prosedyre og funksjon
      - Sammenligning av nøkkelforskjeller

Nøkkelord

Funksjon, Lagret Prosedyre

Hva er en lagret prosedyre

En lagret prosedyre er et sett med SQL-instruksjoner for å utføre en oppgave på RDBMS. Hvis det er et sett med SQL-spørringer som skal brukes på nytt, kan programmereren skrive en lagret prosedyre. Så kan han kalle det og utføre det. Det er også mulig å sende parametere til den lagrede prosedyren for å utføre en oppgave.

Figur 1: Lagret prosedyre

Syntaxen til den lagrede prosedyren er som følger.

CREATE PROCEDURE procedure_name

SOM

sql uttalelse

GÅ;

Følgende spørring brukes til å utføre prosedyren,

EXEC prosedyrenavn;

Følgende SQL-setning oppretter et lagret prosedyrenavn "SelectStudents". Den velger alle studentene i studenttabellen.

Lag prosedyre SelectStudents

Som

Velg * fra studenter

GÅ;

Den lagrede prosedyren kan utføres ved hjelp av følgende kommando,

EXEC SelectStudents;

Den lagrede prosedyren kan også akseptere parametere. Under SQL-setningen opprettes en lagret prosedyre som velger Studenter av det oppgitte navnet fra Student-tabellen.

Lag prosedyre SelectStudents @Name varchar (50)

SOM

VELG * FRA Studenter WHERE Navn = @Name

GÅ;

Følgende erklæring brukes til å utføre prosedyren.

EXEC SelectStudents Name = "Ann";

Det vil velge alle studentene med navnet "Ann" i Studentbordet.

Hva er funksjon

En funksjon er et sett med instruksjoner for å utføre en bestemt oppgave. Nesten alle programmeringsspråk som C ++, C, Java og Python tillater programmerer å skrive funksjoner. En funksjon tillater gjenbruk av samme sett med instruksjoner om og om igjen. Videre organiserer den hele koden.

Figur 2: Hovedfunksjonen i C

En funksjon har følgende syntaks.

return_type function_name (parameterliste)

            // setninger inne i funksjonen

Det kan være funksjoner som aksepterer parametere og ikke aksepterer parametere. Se under funksjonen.

void displayMessage ()

            prinf ("Hello World \ n");

Ovenfor er en enkel C-funksjon. Det får ingen parametere. Det skriver bare ut meldingen "Hello World" til konsollen. Denne funksjonen returnerer ingen verdi. Derfor er returtypen ugyldig.

En funksjon kan også akseptere parametere. Se eksemplet nedenfor.

int calArea (int bredde, int lengde)

            int område = bredde * lengde;

            returområde;

Ovenstående er en funksjon kalt calArea. Det blir to heltallsparametere kalt bredde og lengde. En lokal variabel kalt "område" er opprettet inne i funksjonen. Det tilordnes multiplikasjon av to verdier. Endelig returneres det beregnede området. Det er et heltall. Derfor er returtypen int.

Forskjellen mellom lagret prosedyre og funksjon

Definisjon

En lagret prosedyre er en gruppe SQL-setninger som kan utføre en bestemt oppgave på Relational Database Management-systemet. En funksjon er en selvstendig kodemodul som utfører en bestemt oppgave.

bruk

Videre brukes en lagret prosedyre i RDBMS mens en funksjon brukes i hvilket som helst programmeringsspråk som C, C ++ og Java osv..

Konklusjon

Forskjellen mellom lagret prosedyre og funksjon er at en lagret prosedyre er et sett med SQL-setninger som kan utføres på RDBMS igjen og igjen mens en funksjon er et sett med instruksjoner som er skrevet med et programmeringsspråk som kan utføres igjen og igjen. Kort sagt, en lagret prosedyre er et gjenbrukbart sett med SQL-setninger mens en funksjon er et gjenbrukbart sett med instruksjoner skrevet på et programmeringsspråk.

Henvisning:

1. "SQL lagrede prosedyrer for SQL Server." W3Schools Online Web Tutorials, tilgjengelig her.
2. "C Funksjoner." Www.tutorialspoint.com, Tutorials Point, tilgjengelig her.

Bilde Courtesy:

1. "Процедур" Av Muug1 - Eget arbeid, CC BY-SA 4.0) via Commons Wikimedia
2. "Notepad ++ v6.9.2 på Windows 10, med" Hello World "kildekode i C programmeringsspråk, med funksjonnavn autocompletion" Ved Notepad ++ v6.9.2 SkjermbildeSelffotografert, avledet arbeid (Public Domain) via Commons Wikimedia