Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 12545|Svare: 0

[Kilde] Orakelsystemets forhåndsdefinerte unntak og brukerdefinerte unntak

[Kopier lenke]
Publisert på 19.03.2015 09:28:41 | | |
opprett tabell stuinfo1
(
       stuid int primærnøkkel,
       stuname varchar(10) ikke null,
       Stusex karakter(2) sjekk (stusex='hann' eller stusex='kvinne'),
       Stubir-dato
);
sett inn i stuinfo-verdier ('001', 'Zhang San', 'mann', to_date ('1999-1-1','yyyy-mm-dd'));
sett inn i stuinfo-verdier ('002','Reese','mann',to_date ('1997-12-1','yyyy-mm-dd'));
sett inn i stuinfo-verdier ('003', 'Wang Wu', 'female', to_date ('1995-3-4', 'yyyy-mm-dd'));
sett inn i stuinfo-verdier ('004','haha','mann',to_date ('2000-7-5','yyyy-mm-dd'));
sett inn i stuinfo-verdier ('005', 'haha', 'mann', to_date ('1993-7-5', 'yyyy-mm-dd'));


--System forhåndsdefinerte unntak
Erklær
    v_name stuinfo.stuname%type;
Begynn
    velg Stuname i v_name fra Stuinfo;
--unntak
-- når too_many_rows da
-- dbms_output.put_line('Spørringsresultater er overflødige, kan ikke tildeles');
slutt;
--brukerdefinerte unntak
Erklær
    money_error unntak;
    money1 int := 1000;
    money2 int :=& overføringsbeløp;
Begynn
    Hvis money1-money2 < 0, så
       raise_application_error (-20001, 'Utilstrekkelig balanse');
       --hev money_error;
    ellers
       dbms_output.put_line('Overføring vellykket');
    slutt hvis;
--unntak
-- når money_error da
-- dbms_output.put_line('Utilstrekkelig saldo');
slutt;

--ikke-forhåndsdefinerte unntak
Erklær
    MyError-unntak;
    Pragma exception_init(min feil,-1);
Begynn
    sett inn i stuinfo-verdier ('001','aa','female',to_date('1995-3-4','yyyy-mm-dd'));
unntak
    når myerror da
        dbms_output.put_line('Brudd på primærnøkkelens unikhetsbegrensning');
slutt;

sett inn i stuinfo1-verdier (1,'SDF','mann','');
velg * fra TB1;
Drop-tabell TB1;
--dynamisk SQL
Begynn
     utfør umiddelbart 'create table tb1(tid int)';
slutt;

Erklær
        sqlString varchar2(200);
        tId int:=2;
Begynn
        sqlString:='sett inn i tb1-verdier (:1)';

        kjør umiddelbar sqlString med tId;

slutt;


velg * fra stuinfo;
--Implisitt markør
Begynn
        DBMS_OUTPUT. PUT_LINE('Før innsetting:'|| SQL%RADTELLING);
        oppdatering stuinfo-sett stusex = 'mann';
        DBMS_OUTPUT. PUT_LINE('Etter innsetting:'|| SQL%RADTELLING);
SLUTT;






Foregående:Oraklet får strenglengdefunksjonene length() og hengthb()
Neste:Konfigurer VPN-en i Redhat Enterprise Server 6.3
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com