Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 12545|Odgovoriti: 0

[Vir] Oracle sistem je vnaprej določil izjeme in uporabniško določene izjeme

[Kopiraj povezavo]
Objavljeno na 19. 03. 2015 09:28:41 | | |
ustvari tabelo stuinfo1
(
       Stuid int primarni ključ,
       Stuname varchar(10) ni null,
       Stusex Char(2) preverjeno(Stusex='moški' ali Stusex='ženska'),
       Stubir datum
);
vstavi v stuinfo vrednosti ('001','Zhang San','male', to_date ('1999-1-1','yyy-mm-dd'));
vstavi v stuinfo vrednosti ('002', 'Reese', 'male', to_date ('1997-12-1','yyy-mm-dd');
vstavi vrednosti v stuinfo ('003', 'Wang Wu', 'female', to_date ('1995-3-4', 'yyyy-mm-dd');
vstavite v stuinfo vrednosti ('004','haha', 'male', to_date ('2000-7-5','yyy-mm-dd'));
vstavi v stuinfo vrednosti ('005', 'haha', 'male', to_date ('1993-7-5', 'yyyy-mm-dd');


--Sistemske vnaprej določene izjeme
razglasi
    v_name stuinfo.stuname%type;
začetek
    Izberi Stuname v v_name iz Stuinfo;
--izjema
-- ko too_many_rows potem
-- dbms_output.put_line('Rezultati poizvedb so odvečni, ni mogoče dodeliti');
konec;
--uporabniško definirane izjeme
razglasi
    money_error izjemo;
    money1 int := 1000;
    money2 int :=& znesek prenosa;
začetek
    če denar1-denar2 < 0, potem
       raise_application_error (-20001, 'Nezadostno ravnotežje');
       --zvišati money_error;
    else
       dbms_output.put_line('Prenos uspešen');
    konec, če;
--izjema
-- ko money_error potem
-- dbms_output.put_line('Nezadostno stanje');
konec;

--nevnaprej določene izjeme
razglasi
    Izjema myError;
    pragma exception_init(myerror,-1);
začetek
    vstavi vrednosti v stuinfo ('001','aa', 'female', to_date('1995-3-4','yyy-mm-dd'));
izjema
    ko myerror potem
        dbms_output.put_line('Kršitev omejitve edinstvenosti primarnega ključa');
konec;

vstavi v stuinfo1 vrednosti (1,'sdf', 'moški','');
Izberite * iz TB1;
tabela za spuščanje TB1;
--dinamični SQL
začetek
     izvedi takojšnjo 'ustvari tabelo tb1(tid int)';
konec;

razglasi
        sqlString varchar2(200);
        tId int:=2;
začetek
        sqlString:='vstavi v vrednosti tb1 (:1)';

        izvedite takojšnjo sqlString z uporabo tId;

konec;


Izberite * iz stuinfo;
--Implicitni kazalec
začetek
        DBMS_OUTPUT. PUT_LINE('Pred vstavljanjem:'|| SQL%ROWCOUNT);
        posodobitev stuinfo nastavi stusex = 'moški';
        DBMS_OUTPUT. PUT_LINE('Po vstavljanju:'|| SQL%ROWCOUNT);
KONEC;






Prejšnji:Oracle dobi funkcije dolžine niza length() in hengthb()
Naslednji:Konfigurirajte VPN v Redhat Enterprise Server 6.3
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com