Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 12545|Antwoord: 0

[Bron] Oracle-systeem vooraf gedefinieerde uitzonderingen en door de gebruiker gedefinieerde uitzonderingen

[Link kopiëren]
Geplaatst op 19-03-2015 09:28:41 | | |
maak tabel stuinfo1
(
       Stum int primaire sleutel,
       stuname varchar(10) niet null,
       stusex karakter(2) check(stusex='mannelijk' of stusex='vrouwelijk'),
       Stubir-datum
);
invoegen in stuinfo-waarden ('001', 'Zhang San', 'male',to_date ('1999-1-1','yyyy-mm-dd'));
invoegen in stuinfo-waarden ('002', 'Reese', 'male',to_date ('1997-12-1','yyyy-mm-dd'));
invoegen in stuinfo-waarden ('003', 'Wang Wu', 'vrouwelijk', to_date ('1995-3-4', 'yyyy-mm-dd'));
invoegen in stuinfo-waarden ('004', 'haha', 'male',to_date ('2000-7-5','yyyy-mm-dd'));
invoegen in stuinfo-waarden ('005', 'haha', 'mannelijk', to_date ('1993-7-5', 'yyyy-mm-dd'));


--Systeem vooraf gedefinieerde uitzonderingen
Verklaar
    v_name stuinfo.stuname%type;
begin
    selecteer Stuname in v_name via StuInfo;
--uitzondering
-- wanneer too_many_rows dan
-- dbms_output.put_line('Zoekresultaten zijn redundant, kunnen niet worden toegewezen');
einde;
--door de gebruiker gedefinieerde uitzonderingen
Verklaar
    money_error uitzondering;
    money1 int := 1000;
    money2 int :=& overboekingsbedrag;
begin
    Als geld1-geld2 0 <, dan
       raise_application_error (-20001, 'Onvoldoende saldo');
       --verhoog money_error;
    anders
       dbms_output.put_line('Transfer successful');
    einde als;
--uitzondering
-- wanneer money_error dan
-- dbms_output.put_line('Onvoldoende saldo');
einde;

--niet-vooraf gedefinieerde uitzonderingen
Verklaar
    myerror-uitzondering;
    pragma exception_init(mijnfout,-1);
begin
    invoegen in stuinfo-waarden ('001','aa','female',to_date('1995-3-4','yyyy-mm-dd'));
uitzondering
    Wanneer mijn fout dan
        dbms_output.put_line('Schending van de primaire sleutel-uniciteitsbeperking');
einde;

invoegen in stuinfo1-waarden (1,'sdf', 'male','');
selecteer * uit TB1;
Droptabel TB1;
--dynamische SQL
begin
     voer onmiddellijk 'create table tb1(tid int)' uit;
einde;

Verklaar
        sqlString varchar2(200);
        tId int:=2;
begin
        sqlString:='invoegen in tb1-waarden (:1)';

        voer direct sqlString uit met tId;

einde;


Selecteer * uit StuInfo;
--Impliciete cursor
begin
        DBMS_OUTPUT. PUT_LINE('Voor het invoegen:'|| SQL%ROWCOUNT);
        update stuinfo set stusex = 'mannelijk';
        DBMS_OUTPUT. PUT_LINE('Na het invoegen:'|| SQL%ROWCOUNT);
EINDE;






Vorig:Oracle krijgt de snaarlengtefuncties length() en hengthb()
Volgend:Configureer de VPN in Redhat Enterprise Server 6.3
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com