Comentariu |
/* comentariu pe mai multe linii */ -- comentariu pe o linie rem comentariu pe o linie |
Instrucţiune vidă |
null; |
Atribuire | variabila := expresie;Pentru o expresie se pot folosi:
|
De control |
IF conditie1 THEN instr1; [ELSIF conditi2 THEN instr2;] ... [ELSE instrn;] END IF; ------------------------ LOOP sir de instructiuni care se executa repetat Din sirul de instructiuni se poate iesi fortat cu EXIT [WHEN conditie]; END LOOP; ------------------------ WHILE conditie LOOP sir de instructiuni; Din sirul de instructiuni se poate iesi fortat cu EXIT [WHEN conditie]; END LOOP; ------------------------ FOR variabila IN [REVERSE] val_min .. val_max LOOP instructiuni; Din sirul de instructiuni se poate iesi fortat cu EXIT [WHEN conditie]; END LOOP; |
Diverse |
exit; return expresie; apel de procedura; eticheta instructiune; -- în faţa unei instrucţiuni poate apare o etichetă GOTO eticheta; -- salt la o instrucţiune etc. |
Exemple pentru SQL*Plus sau iSQL*Plus:
-- Generare coduri ASCII set serveroutput on declare i number; begin -- genereaza codurile ASCII cuprinse intre 32 si 255 for i in 32..255 loop dbms_output.put_line((to_char(i,'000')) || ':' || chr(i) || ' '); end loop; end;
-- generarea primei si ultimei zile din fiecare luna a anului 2015 (data si denumirea zilei) set serveroutput on declare i number; d1 date; d2 date; z1 varchar2(30); z2 varchar2(30); begin for i in 1..12 loop d1:=to_date('01.' || to_char(i,'00') || '.2015','dd.mm.yyyy'); d2:=last_day(d1); z1:=to_char(d1,'dd.mm.yyyy') || ' (' || to_char(d1,'Day') || ')'; z2:=to_char(d2,'dd.mm.yyyy') || ' (' || to_char(d2,'Day') || ')'; dbms_output.put_line(z1 || ' - ' || z2); end loop; end;