PL / SQL-datatyper - Funktioner och funktioner för PL / SQL med exempel

Innehållsförteckning:

Anonim

Introduktion till PL / SQL-datatyper

Det finns ofta ett behov av att utföra samma SQL-frågor flera gånger och för att tillgodose detta behov kommer Oracle med PL / SQL i början av 90-talet. Den är utvecklad för att förbättra SQL: s funktioner. Det är inbäddat i Oracle-databasen. PL / SQL är en förlängning av strukturerat frågespråk i Oracle-databassystemet. Det är ett procedurspråk som består av tre delar en deklarativ del som kan acceptera valfritt antal parametrar, en körbar del som består av SQL-frågor och en undantagshantering.

PL / SQL lagras i databasen i en sammanställd form och kan hänvisas till i koden med dess namn. PL / SQL tillåter utvecklaren att manipulera data genom att använda valfri beslutslogik, iteration och många andra funktioner som stöds av det processuella programmeringsspråket.

Nyckelfunktioner för PL / SQL

Viktiga funktioner för PL / SQL anges nedan:

  • PL / SQL tillåter utvecklaren att köra valfritt antal frågor i ett block med ett enda kommando.
  • PL / SQL kan fungera som en procedur, funktioner, triggers och typer och lagras i databasen och kan användas valfritt antal gånger av applikationerna.
  • Till skillnad från SQL är felhantering möjlig i PL / SQL.
  • PL / SQL returnerar ett enda skalvärde.

PL / SQL-datatyper

Som alla andra språk har PL / SQL också datatyper. låt oss titta på några av de datatyper som definieras i PL / SQL

PL / SQL-datatyp

Beskrivning

BINARY_INTEGERAccepterar heltalssiffriga data, signerad heltal i intervallet -2, 147, 483, 648 till 2, 147, 483, 647 och representerad i 32 bitar
KLICKAccepterar binär data
BLOB (n)Binära stora objektdata där intervallet för n är mellan 1 och 2 147 483 647
BOOLEANAccepterar antingen sant eller falskt (logiska värden)
RÖDINGAccepterar strängdata med fast längd 1
CHAR (n)Strängdata med längd n
CHAR VARYING (n)Teckensträngdata med variabel längd där n är den maximala gränsen
KARAKTÄRDet är en teckensträng med fast längd och den maximala storleken kan vara 32 767 byte.
KARAKTER (n)En teckensträng med variabel längd med en maximal storlek på n
DATUMDet används för att lagra datum och tid som innehåller fält som ett år, månad, dag, timme, minut, sekund och många fler.
DECIMALAccepterar decimaluppgifter med en maximal precision på 38 decimaler.
DUBBELFlytande antal dubbelprecision
FLYTAFlytande punkttyp med maximal precision på 126 bitar
INTdet är en singad fyra-bytes heltalssiffriga data
HELTALdet är en singad fyra-bytes heltalssiffriga data

Exempel på PL / SQL-datatyper

Hittills har vi sett de olika datatyper som finns tillgängliga i PL / SQL, låt oss titta på några av exemplet och se hur vi kan skapa och utföra lagrade procedurer i PL / SQL

Procedurer i PL / SQL är ett underprogram som består av SQL-satser, procedurerna i Oracle lagras som ett databasobjekt och har ett unikt namn som det kan hänvisas till. Proceduren kan ha ett kapselt block som gör det möjligt för utvecklaren att utföra alla logiska och aritmetiska operationer på data.

Låt oss titta på syntaxen för den lagrade proceduren

Syntax:

SKAPA ELLER Byt ut FÖRFARANDET


(
..
.
)
( IS | AS )
BEGIN
EXCEPTION
END;

(
..
.
)
( IS | AS )
BEGIN
EXCEPTION
END;

Syntax Förklaring:

  • Skapa eller ersätta nyckelord instruerar kompilatorn att skapa ett databasobjekt med det namn som anges i proceduren, procedurnamnet måste vara unikt annars kommer kompilatorn att kasta ett fel.
  • Nu när du har en uppfattning om procedursyntaxen, låt oss skriva en mycket enkel lagrad procedur och förstå de olika komponenterna i den.
  • Som alla andra programmeringsspråk börjar vi med ett mycket enkelt Hello World-program. Den lagrade proceduren tar namnet som inmatning och visar resultatet som Hello World från

SKAPA ELLER Byt ut FÖRFARANDE Print_Message (p_name IN VARCHAR2)

Koda:

IS
BEGIN
dbms_output.put_line ('Hello World from '|| p_name);
END;
/
EXEC Print_Message ('Mohit');

Kodförklaring:

  • Här har den första raden ett nyckelord Skapa eller ersätta som kommer att instruera kompilatorn att antingen skapa en lagrad procedur med ett namn Print_Message som tar en Varchar2 som inmatning eller ersätta den befintliga lagrade proceduren med samma namn.
  • Linjen dbms_output.put_line sammanlänker Hello World från meddelandet med den ingång som du skickar till proceduren och visar den på konsolen.
  • För att ringa en lagrad procedur används EXEC-nyckelord följt av parametervärden i samma datatyper som definierats i den lagrade proceduren.

Funktioner i PL / SQL

Funktion i PL / SQL är mycket lik den lagrade proceduren, den enda stora skillnaden är att en funktion ska ha ett returvärde. Det bör antingen returnera ett värde eller bör göra ett undantag. Låt oss se några av egenskaperna hos funktionerna i PL / SQL

  1. Funktioner som huvudsakligen används för datamanipuleringsändamål gillar att utföra grundläggande logiska och aritmetiska beräkningar.
  2. En typisk funktionsstruktur har 3 delar, dvs en deklarationsdel, exekveringsdelen och undantagets felhantering.
  3. Om funktionen inte har något DML-uttalande i den, kan den ringas av det valda uttalandet.

låt oss se syntaxen för funktionerna

Syntax:

SKAPA ELLER Byt ut FUNKTION


(
)
RETURN
( IS | AS )
BEGIN
EXCEPTION
END;

(
)
RETURN
( IS | AS )
BEGIN
EXCEPTION
END;

Syntax Förklaring:

  • Skapa ett funktionsnyckel som instruerar kompilatorn att skapa en funktion om den inte redan finns. Returdatatypen är obligatorisk, återigen bör funktionsnamnet vara unikt.
  • Undantagshanteringsblock är valfritt men det är alltid tillrådligt att ha det.

Slutsats

Låt oss nu samla in genom att sammanfatta de viktigaste punkterna som vi har diskuterat i den här artikeln, PL / SQL är det sammanställda blocket av SQL-satser som lagras i databasen som ett objekt. Dessa objekt kan vara av typlagrad procedur, funktioner och typer. Vi har sett de olika datatyper som erbjuds i PL / SQL. Vi lär oss den grundläggande strukturen för lagrade procedurer och funktioner i PL / SQL och deras egenskaper.

Rekommenderade artiklar

Detta är en guide till PL / SQL-datatyper. Här diskuterar vi exemplen med kodförklaring och nyckelfunktioner för pl / sql tillsammans med funktioner i pl / sql. Du kan också titta på följande artiklar för att lära dig mer -

  1. CASE-uttalande i PL / SQL
  2. TeraData vs Oracle
  3. Vad gör datavetare?
  4. Betydelsen av markören i PL / SQL
  5. Kast vs kastar | Topp 5 skillnader du borde veta
  6. Olika typer av SQL-data med exempel