Documente Academic
Documente Profesional
Documente Cultură
2
pentru examen la „Baze de date Web orientate”
Ciclul I, Licenţa; Anul IV, Specialitatea "Tehnologii informaţionale”
1.1
CREATE [OR REPLACE] FUNCTION function_name
[ (parameter [,parameter]) ]
RETURN return_datatype
IS | AS
[declaration_section]
BEGIN
executable_section
[EXCEPTION
exception_section]
END [function_name];
e.x.
create or replace function adder(n1 in number, n2 in number)
return number
is
n3 number(8);
begin
n3 :=n1+n2;
return n3;
end;
/
1.2
Proceduri Functii
Procedurile sunt blocuri de bază PL SQL pentru Funcțiile sunt blocuri utilizate în principal pentru
a efectua o anumită acțiune. a efectua calculele.
Procedurile nu vor returna valoarea Funcțiile trebuie să returneze valoarea. Când
scrieți funcții, asigurați-vă că puteți scrie
instrucțiunea return.
Procedurile se execută întotdeauna ca Funcțiile se execută ca parte a expresiei
instrucțiune PL SQL
Nu conține clauza de returnare în secțiunea Trebuie să conțină clauza de returnare în antet
antet
Putem transmite valorile folosind parametrii IN Funcția trebuie să returneze o singură valoare
OUT IN OUT
Procedurile nu pot fi executate în instrucțiunea Funcțiile se pot executa sau apela folosind
Select instrucțiunea select, dar nu trebuie să conțină
parametri Out sau IN OUT.
1.3
DECLARE
n3 number(2);
BEGIN
n3 := adder(11,22);
dbms_output.put_line('Addition is: ' || n3);
END;
/
2.1
Dynamic SQL este o tehnică de programare care vă permite să construiți instrucțiuni SQL în mod dinamic în timpul
execuției. Puteți crea aplicații mai generale, flexibile, utilizând SQL dinamic, deoarece textul complet al unei
instrucțiuni SQL poate fi necunoscut la compilare. De exemplu, SQL dinamic vă permite să creați o procedură care
În versiunile anterioare ale Oracle, singura modalitate de a implementa SQL dinamic într-o aplicație PL/SQL a fost
utilizarea pachetului DBMS_SQL. Oracle8i introduce SQL dinamic nativ, o alternativă la pachetul DBMS_SQL.
Folosind SQL dinamic nativ, puteți plasa instrucțiuni SQL dinamic direct în blocuri PL/SQL.
2.2
2.3
3
CREATE OR REPLACE PACKAGE SUPER_LOAD AS
FUNCTION MAIN (data in date) return VARCHAR2;
FUNCTION MAIN (value in integer)return VARCHAR2;
END SUPER_LOAD;
/
Declare
returnRes Varchar2(200);
returnRes1 Varchar2(200);
BEGIN
returnRes := SUPER_LOAD.MAIN(sysdate);
dbms_output.put_line(returnRes);
returnRes1 := SUPER_LOAD.MAIN(5);
dbms_output.put_line(returnRes1);
END;