Kyaria icon

DB-AUFGABEN-[Korrekt genug für Syntaxpunkte]

Kyaria | PRO | 04/30/18 07:52:46 PM UTC | 0 ⭐ | 433 👁️ | Never ⏰ | []
SQL |

2.63 KB

|

None

|

0 👍

/

0 👎

--Aufgabe no1
 
DECLARE 
anzahl NUMBER := 17;
BEGIN 
dbms_output.put_line(anzahl);
END;
 
--Aufgabe no2
 
DECLARE
anz_1 NUMBER(38,2) := 1234.145;
anz_2 NUMBER(38) := 1234567812345;
BEGIN
dbms_output.put_line(anz_1 || ' / ' || anz_2);
END;
 
--Aufgabe no3
 
DECLARE 
text varchar2(255) := 'Wir lernen PL/SQL';
BEGIN
 
FOR i IN 1..3 loop
dbms_output.put_line(text);
END loop;
 
END;
 
--Aufgabe no4
 
DECLARE
var_val kunden.k_id%TYPE;
BEGIN
var_val := 1337;
 
dbms_output.put_line(var_val);
END;
 
--Aufgabe no5
 
DECLARE
 
cursor c1 IS SELECT COUNT(*) FROM KUNDEN;
zahl NUMBER := 0;
BEGIN
 
OPEN c1;
loop
    IF c1%NOTFOUND THEN
        exit;
    END IF;
    
    fetch c1 INTO zahl;
    dbms_output.Put_line(zahl);
END loop;
CLOSE c1;
 
END;
 
--Aufgabe no6
 
DECLARE
 
    b NUMBER := 7;
    l NUMBER := 12;
    erg NUMBER := 0;
    
BEGIN
    erg := (b * l) / 2;
    dbms_output.put_line(erg);
END;
 
--aufgabe no7
 
DECLARE 
 
datum DATE := sysdate;
 
BEGIN 
dbms_output.put_line(datum);
END;
 
--aufgabe no8
 
DECLARE 
 
std varchar2(255) := to_char(sysdate, 'hh24'); 
mi varchar2(255) := to_char(sysdate, 'mi'); 
ss varchar2(255) := to_char(sysdate, 'ss'); 
 
BEGIN
 
dbms_output.Put_line(std || ':' || mi || ':' || ss);
 
END;
 
--Aufgabe no9
 
DECLARE 
pi CONSTANT NUMBER := 3.41;
r NUMBER := &ZAHL;
a_erg NUMBER := 0;
u_erg NUMBER := 0;
 
BEGIN
    --A = PI * R² // U = 2 * PI * R
    a_erg := pi * (r * r);
    u_erg := 2 * pi * r;
    
    dbms_output.put_line('Fläche: ' || a_erg || ', Umfang: ' || u_erg);
    
END;
 
-- Aufgabe no10
 
DECLARE 
 
var_1 NUMBER := 10;
 
BEGIN 
 
IF var_1 = 10 THEN 
    dbms_output.put_line('Jup');
ELSE
    dbms_output.put_line('Nope');
END IF;
 
END;
 
--aufgabe no11
 
DECLARE
 
einstellungsdatum DATE := sysdate - 2500;
cursor c1 IS SELECT * FROM employee;
 
c2 c1%rowtype;
 
BEGIN
OPEN c1;
 
loop
    fetch c1 INTO c2;
        exit WHEN c1%NOTFOUND;
        
        IF c2.e_bday BETWEEN c2.e_bday AND ADD_MONTHS(c2.e_bday, 3) THEN 
            dbms_output.put_line(c2.e_name || ', Months: ' || ROUND(MONTHS_BETWEEN(sysdate, c2.e_bday)));
        ELSIF  c2.e_bday BETWEEN c2.e_bday AND ADD_MONTHS(c2.e_bday, 120) THEN 
            dbms_output.put_line(c2.e_name || ', Months: ' || ROUND(MONTHS_BETWEEN(sysdate, c2.e_bday)));
        ELSIF  c2.e_bday BETWEEN c2.e_bday AND ADD_MONTHS(c2.e_bday, 120) THEN 
            dbms_output.put_line(c2.e_name || ', Months: ' || ROUND(MONTHS_BETWEEN(sysdate, c2.e_bday)));
        ELSE
            dbms_output.put_line(c2.e_name || ', ' || 'SONSTIGE');
        END IF;
END loop;
 
CLOSE c1;
END;

Comments