crea tabella stuinfo1
( chiave primaria stuid int, Stuname Varchar(10) non nullo, Stusex Char(2) controllo(Stusex='maschio' o Stusex='femmina'), Data di Stubir ); inserire nei valori di stuinfo ('001', 'Zhang San', 'male', to_date ('1999-1-1', 'yyyy-mm-dd')); inserire nei valori di stuinfo ('002', 'Reese', 'male', to_date ('1997-12-1', 'yyyy-mm-dd')); inserire nei valori di stuinfo ('003', 'Wang Wu', 'femmina', to_date ('1995-3-4', 'yyyy-mm-dd')); inserire nei valori di Stuinfo ('004', 'haha', 'maschi', to_date ('2000-7-5', 'yyyy-mm-dd')); inserire nei valori di Stuinfo ('005', 'haha', 'maschile', to_date ('1993-7-5', 'yyyy-mm-dd'));
--Eccezioni predefinite del sistema dichiara v_name stuinfo.stuname%type; inizio selezionare Stuname in v_name da Stuinfo; --eccezione -- quando too_many_rows allora -- dbms_output.put_line('I risultati delle query sono ridondanti, non possono essere assegnati'); fine; --eccezioni definite dall'utente dichiara money_error eccezione; Money1 INT := 1000; money2 int :=& importo trasferito; inizio se money1-money2 < 0 allora raise_application_error (-20001, 'Saldo insufficiente'); --alzare money_error; altrimenti dbms_output.put_line('Trasferimento riuscito'); fine se; --eccezione -- quando money_error allora -- dbms_output.put_line('Equilibrio insufficiente'); fine;
--eccezioni non predefinite dichiara myerror exception; pragma exception_init(mioerrore,-1); inizio inserire nei valori di Stuinfo ('001', 'aa', 'femmina', to_date('1995-3-4', 'yyyy-mm-dd')); Eccezione quando myerror allora dbms_output.put_line('Violazione del vincolo di unicità della chiave primaria'); fine;
inserire nei valori di stuinfo1 (1,'sdf', 'maschi',''); seleziona * da tb1; Drop table TB1; --SQL dinamico inizio esegui immediatamente 'create table tb1(tid int)'; fine;
dichiara sqlString varchar2(200); tId int:=2; inizio sqlString:='inserire nei valori di tb1 (:1)';
eseguire immediatamente sqlString usando tId;
fine;
seleziona * da stuinfo; --Cursore implicito inizio DBMS_OUTPUT. PUT_LINE('Prima di inserire:'|| SQL%ROWCOUNT); Aggiorna il set Stuinfo Stusex = 'maschio'; DBMS_OUTPUT. PUT_LINE('Dopo aver inserito:'|| SQL%ROWCOUNT); FINE;
|