Documente Academic
Documente Profesional
Documente Cultură
Pot fi scrise şi funcţii în locul procedurilor. Pentru aceasta, atunci când creăm o funcţie, în
secţiunea de declaraţii lista parametrilor va fi urmată de cuvântul RETURN şi de tipul valorii
rezultate:
Pentru a vizualiza procedurile şi funcţiile existente, putem folosi următoarea interogare SQL:
Variabile tiparibile
O altă modalitate de a tipări variabile este utilizarea instrucţiuni print, cu ajutorul unei variabile
de legătură. Variabilele de legătură trebuie să fie precedate de :, cum ar fi:new.
Exemplul 3:
SET AUTOPRINT ON
VARIABLE total_sumacr NUMBER
BEGIN
SELECT SUM(sumacr) INTO :total_sumacr FROM debitori;
END;
/
DECLARE
BEGIN
DBMS_OUTPUT.PUT_LINE('Total credite acordate = '||:total_sumacr);
END;
/
Triggere
create sequence seq_marca INCREMENT BY 1
MINVALUE 1010 MAXVALUE 5555 NOCYCLE NOCACHE ORDER;
BEGIN
IF a=0 THEN
IF b=0 THEN
IF c=0 THEN
sir:='Nedeterminare';
ELSE
sir:='Imposibil';
END IF;
ELSE
sir:='Ecuatia este de gradul I';
x1:=-c/b;
sir:=sir ||',x='||x1;
END IF;
ELSE
delta:=b**2-4*a*c;
IF delta>0 THEN
x1:=(-b-SQRT(delta))/(2*a);
x2:=(-b+SQRT(delta))/(2*a);
sir:='x1='||x1||',x2='||x2;
ELSE
IF delta=0 THEN
x1:=-b/(2*a);
sir:='x1=x2='||x1;
ELSE
sir:='Radacinile sunt complexe!';
END IF;
END IF;
end if;
RETURN sir;
END;
/
Lansarea în execuţie
begin
dbms_output.Put_line(f_ec2 (24,555,67));
end;
/
Instrucţiunea IF
set serveroutput on;
DECLARE
tot_inreg INTEGER DEFAULT 0;
BEGIN
tot_inreg:=nr_inreg('debitori');
DBMS_OUTPUT.PUT_LINE('Nr. total de inregistrari ale tabelei debitori este =
'||tot_inreg);
END;
/