Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 12545|Răspunde: 0

[Sursă] Excepțiile predefinite ale sistemului Oracle și excepțiile definite de utilizator

[Copiază linkul]
Postat pe 19.03.2015 09:28:41 | | |
create table stuinfo1
(
       stuid int cheia primară,
       Stuname Varchar(10) nu nul,
       Verificare Stusex Char(2) (Stusex='Bărbat' sau Stusex='Femelă'),
       Stubir Date
);
inserați în valorile stuinfo ('001', 'Zhang San', 'male', to_date ('1999-1-1', 'yyyy-mm-dd'));
inserați în valori stuinfo ('002', 'Reese', 'male', to_date ('1997-12-1', 'yyyy-mm-dd'));
inserați în valori stuinfo ("003", "Wang Wu", "feminin", to_date ("1995-3-4", "yyy-mm-dd");
inserați în valorile Stuinfo ('004', 'haha', 'male', to_date ('2000-7-5', 'yyyy-mm-dd'));
inserați în valori Stuinfo ('005', 'haha', 'male', to_date ''1993-7-5', 'yyyy-mm-dd'));


--Excepții predefinite de sistem
declară
    v_name stuinfo.stuname%type;
Încep
    selectează Stuname în v_name din Stuinfo;
--excepție
-- când too_many_rows atunci
-- dbms_output.put_line('Rezultatele interogării sunt redundante, nu pot fi atribuite');
sfârșit;
--excepții definite de utilizator
declară
    money_error excepție;
    Money1 INT := 1000;
    money2 int :=& suma transferului;
Încep
    dacă money1-money2 < 0 atunci
       raise_application_error (-20001, "Sold insuficient");
       --ridică money_error;
    altfel
       dbms_output.put_line('Transfer reușit');
    sfârșit dacă;
--excepție
-- când money_error atunci
-- dbms_output.put_line('Echilibru insuficient');
sfârșit;

--excepții nedefinite
declară
    myerror exception;
    pragma exception_init(eroarea mea,-1);
Încep
    inserați în valorile Stuinfo ('001', 'aa', 'female', to_date('1995-3-4', 'yyyy-mm-dd'));
Excepție
    când myerror atunci
        dbms_output.put_line('Încălcarea constrângerii unicității cheii primare');
sfârșit;

inserați în valorile stuinfo1 (1,'sdf', 'male','');
selectează * din TB1;
drop table tb1;
--SQL dinamic
Încep
     execută imediat 'creează tabelul tb1(tid int)';
sfârșit;

declară
        sqlString varchar2(200);
        tId int:=2;
Încep
        sqlString:='inserați în valorile tb1 (:1)';

        execută imediat sqlString folosind tId;

sfârșit;


selectează * din stuinfo;
--Cursor implicit
Încep
        DBMS_OUTPUT. PUT_LINE('Înainte de introducere:'|| SQL%ROWCOUNT);
        Actualizare setul StuInfo Stusex = 'masculin';
        DBMS_OUTPUT. PUT_LINE('După inserare:'|| SQL%ROWCOUNT);
SFÂRȘIT;






Precedent:oracolul primește funcțiile lungime a șirului long() și hengthb()
Următor:Configurează VPN-ul în Redhat Enterprise Server 6.3
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com