sql_10.txt

(2 KB) Pobierz
SET serveroutput on

BEGIN 
DBMS_OUTPUT.PUT_LINE('Poczatek'); 
UPDATE zatrudnienia SET pensja=pensja*1;
DBMS_OUTPUT.PUT_LINE('Koniec'); 
END;

======================================================================================

DECLARE 
x varchar2(20);
BEGIN
SELECT nazwisko INTO x FROM osoby where id_os=3;
DBMS_OUTPUT.PUT_LINE('nazwisk:'||x);
END;

======================================================================================

DECLARE 
temp varchar2(200);
BEGIN
temp:='CREATE TABLE t (id_number)';
execute immediate temp; 
END;

=====================================================================================

DECLARE 
x number;
BEGIN
x:=0;
x:=1/x;
EXCEPTION
WHEN ZERO_DIVIDE THEN DBMS_OUTPUT.PUT_LINE('Blad');
END;

======================================================================================

DECLARE
blad EXCEPTION;
BEGIN
RAISE blad;
EXCEPTION
WHEN blad then DBMS_OUTPUT.PUT_LINE('Blad');
END;

=====================================================================================

Kursor niejawny: 

BEGIN
UPDATE zatrudnienia set pensja=pensja*1;
DBMS_OUTPUT.PUT_LINE(SQL%ROWCOUNT);
END;

====================================================================================

DECLARE 
TYPE r_pensja is RECORD
(r_id_os NUMBER(4),
 r_pensja NUMBER);
dane r_pensja;
CURSOR kr is SELECT id_os, pensja FROM zatrudnienia WHERE do is NULL;
BEGIN
OPEN kr;
LOOP
FETCH kr INTO 
EXIT WHEN kr%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(dane.r_id_Os);
END LOOP; 
CLOSE kr;
END;

=========================================================================================

Jawny kursor

DECLARE 
TYPE r_pensja is RECORD
(r_id_os NUMBER(4),
 r_pensja NUMBER);
dane r_pensja;
CURSOR kr is SELECT id_os, pensja FROM zatrudnienia WHERE do is NULL;
BEGIN
OPEN kr;
LOOP
FETCH kr INTO dane; 
EXIT WHEN kr%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(dane.r_id_Os);
END LOOP; 
CLOSE kr;
END;

=========================================================================================

DECLARE 
TYPE r_pensja is RECORD
(r_id_os NUMBER(4),
 r_pensja NUMBER);
dane1 r_pensja;
CURSOR kr is SELECT id_os, pensja FROM zatrudnienia WHERE do is NULL;
BEGIN
FOR dane in kr
LOOP
DBMS_OUTPUT.PUT_LINE(dane1.r_pensja);
END LOOP;
END;
Zgłoś jeśli naruszono regulamin