sql >> Database teknologi >  >> RDS >> Oracle

Sådan opretter du PL/SQL-funktion i Oracle-databasen

Så nu, hvor vi allerede har lært i den forrige PL/SQL-tutorial om, hvad der er PL/SQL-funktioner i Oracle Database, lad os tage et spring foran og lære, hvordan man opretter en PL/SQL-funktion ved hjælp af et meget simpelt eksempel.

Denne tutorial kræver et ordentligt kendskab til syntaksen af ​​PL/SQL-funktioner, så jeg vil foreslå dig at tjekke den forrige tutorial først. Når det er sagt, lad os starte denne øvelse.

For at holde denne vejledning enkel og let at forstå, vil vi oprette en meget nem funktion, som vil beregne arealet af en cirkel. Jeg gætter på, at det vil tjene formålet og hjælpe dig med at lære, hvordan du opretter PL/SQL-funktioner i Oracle Database.

Som diskuteret i det forrige selvstudie, er funktionslegemet opdelt i to dele

  • Først er overskriften på PL/SQL-funktionen og
  • Den anden er eksekveringsdelen af ​​PL/SQL-funktionen

Så lad os starte med overskriften på vores funktion.

Trin 1. Opret headeren til en PL/SQL-funktion.

Headeren består af funktionens signatur eller erklæringen af ​​PL/SQL-funktionen.

--Function Header
CREATE OR REPLACE FUNCTION circle_area (radius NUMBER) 
RETURN NUMBER IS

Trin 2. Deklarer variabler eller konstanten.

Hvis dit program kræver, at du erklærer en variabel eller konstant eller noget, så kan du gøre det lige efter at have oprettet overskriften, også det uden at bruge nøgleordet DECLARE.

--Declare a constant and a variable
pi  	CONSTANT NUMBER(7,2) :=	3.141;
area 	NUMBER(7,2);

Trin 3. Opret eksekveringsdelen af ​​PL/SQL-funktionen.

Når du har oprettet headeren til din funktion og erklæret alle dine nødvendige variabler såvel som konstanter, er du klar til at oprette udførelsesdelen af ​​din PL/SQL-funktion. Her i udførelsessektionen af ​​en PL/SQL-funktion skriver du alle dine udførelsesudsagn. Denne del definerer også, hvordan din funktion fungerer.

BEGIN
  --Area of Circle pi*r*r;
  area := pi * (radius * radius);
  RETURN area; 
END;
/

Hurtig info:
For at beregne kvadratet af cirklens radius i cirklens areal kan du også bruge den indbyggede funktion POWER (p, q). Denne funktion tager to numeriske input og returnerer én numerisk værdi, som vil være svaret på det aritmetiske udtryk for p raise til q.

Lad os nu samle alle ovenstående bidder af koder sammen til en enkelt navngivet enhed.

PL/SQL-funktion til beregning af "Area of ​​the Circle".

--Function Header
CREATE OR REPLACE FUNCTION circle_area (radius NUMBER) 
RETURN NUMBER IS
--Declare a constant and a variable
pi  	CONSTANT NUMBER(7,2) :=	3.141;
area 	NUMBER(7,2);
BEGIN
  --Area of Circle pi*r*r;
  area := pi * (radius * radius);
  RETURN area; 
END;

En vellykket kompilering vil skabe en navngivet PL/SQL-blok, som er din PL/SQL-funktion med navnet circle_area.

Da PL/SQL-funktioner hedder PL/SQL-blok, bliver de permanent gemt i din database, som du kan bruge når som helst.

For at se din PL/SQL-funktion i aktion, skal du kalde den gennem dit program. Dit program kan være en anonym PL/SQL-blok, eller en navngivet PL/SQL-blok eller endda bruge en SELECT-sætning. Få af disse forskellige måder at kalde en funktion på er blevet demonstreret i min video tutorial om det samme emne på min YouTube-kanal. Jeg opfordrer dig til at se den video.

Men hvis du vil have mig til at lave en separat blog om at kalde en PL/SQL-funktion, så skriv til mig på min Facebook eller efterlad et tweet på min Twitter.

Det var det for denne vejledning om, hvordan man opretter en PL/SQL-funktion i Oracle-databasen. Sørg for at dele denne blog på dine sociale medier og hjælp andre med at lære.


  1. Rekursiv forespørgsel i SQL Server

  2. Sådan opretter og bruger du MySQL-visninger

  3. Hvordan ændrer jeg kolonnens standardværdi i PostgreSQL?

  4. Introduktion af agentbaseret databaseovervågning med ClusterControl 1.7