Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 12902|Válasz: 1

[Forrás] Orákul normál kurzorok, implicit kurzorok és paraméterezett kurzorok

[Linket másol]
Közzétéve 2015. 03. 19. 10:53:06 | | |
Válassz * a stuinfo-ból;
--Implicit kurzor
Kezdeni
    dbms_output.put_line('Elő-lekérdezés:'|| sql%rowcount);
    update stuinfo set stusex = 'nősasszony';
    dbms_output.put_line('Lekérdezés után:'|| sql%rowcount);
vége;

--explicit kurzor
--1. Gyakori
deklarálni
    A MyCur1 kurzora a StuInfo közül a * opció lesz; --definiáljuk a kurzorokat
    --v_id stuinfo.stuid%type;
    --v_name stuinfo.stuname%type;
    --v_sex stuinfo.stusex%type;
    --v_bir stuinfo.stubir%type;
    v_row stuinfo%rowtype;
Kezdeni
    nyisd ki a mycur1-et; --Nyisd ki a kurzort
    Hurok
    --hozd a mycur1-et v_id,v_name,v_sex,v_bir-be; --Mozgasd le a kurzort, hogy a változóba kerüljön az olvasott érték
    hozd a mycur1-et v_row-be; --Olvassa fel a kurzort
    Kilépni, amikor a mycur1%not talált;
    --dbms_output.put_line('id:'|| v_id||', név: '|| v_name||', nemű: '|| v_sex||' Születésnap: '|| v_bir); --Kimeneti eredmény
    dbms_output.put_line('id:'|| v_row.stuid||', név: '|| v_row.stuname||', nem: '|| v_row.stusex||' Születésnap: '|| v_row.stubir);
    véghurok;
    Zárd be MyCur1; --Kapcsold ki a kurzort
vége;

--2. Versifikátor paraméterekkel
deklarálni
    a mycur1(v_sex stuinfo.stusex%type) kurzora a *-t a stuinfo helyéről, ahol stusex = v_sex; --definiáljuk a kurzorokat
    v_row stuinfo%rowtype;
Kezdeni
    nyissa meg mycur1('&gender'); --Nyisd ki a kurzort
    Hurok
    hozd a mycur1-et v_row-be; --Olvassa fel a kurzort
    Kilépni, amikor a mycur1%not talált;
    dbms_output.put_line('id:'|| v_row.stuid||', név: '|| v_row.stuname||', nem: '|| v_row.stusex||' Születésnap: '|| v_row.stubir);
    véghurok;
    Zárd be MyCur1; --Kapcsold ki a kurzort
vége;

--3. Körkurzor
deklarálni
    A MyCur1 kurzora a StuInfo közül a * opció lesz; --definiáljuk a kurzorokat
Kezdeni
    v_row a mycur1-ben
    Hurok
        dbms_output.put_line('id:'|| v_row.stuid||', név: '|| v_row.stuname||', nem: '|| v_row.stusex||' Születésnap: '|| v_row.stubir);
    véghurok;
vége;

--4. Frissítsd az adatokat a kurzorral
deklarálni
    A Mycur1 kurzort a Stuinfo közül válasszuk ki a frissítéshez; --definiáljuk a kurzorokat
Kezdeni
    v_row a mycur1-ben
    Hurok
        ha v_row.stuid = '003', akkor
           töröld a stuinfo-ból, ahol a mycur1 aktuális helye;
        más
           frissítés stuinfo halmaz: Stusex = 'hím', ahol a mycur1 aktuális állapota;
        véget ér, ha;
    véghurok;
vége;

Válassz * a stuinfo-ból;
frissítés stuinfo halmaza stusex = 'nősasszony', ahol stuid = '002';

--referencia kurzor
--1. Gyenge típus
deklarálni
    a curname a ref cursor; --definiál kurzortípust (a cursor név a típus neve)
    mycur1 curname; --
    v_sex stuinfo.stusex%type;
    v_row stuinfo%rowtype;
    v_row2 subinfo%rowtype;
Kezdeni
    v_sex := '& nem';
    ha v_sex = 'hím', akkor
       nyisd meg a mycur1-et a stuinfo * kiválasztásához, ahol Stusex = 'hím';
        Hurok
        hozd a mycur1-et v_row-be; --Olvassa fel a kurzort
        Kilépni, amikor a mycur1%not talált;
        dbms_output.put_line('id:'|| v_row.stuid||', név: '|| v_row.stuname||', nem: '|| v_row.stusex||' Születésnap: '|| v_row.stubir);
        véghurok;
    más
       nyisd meg a mycur1-et a Subinfo * kiválasztásához;
       Hurok
        hozd a mycur1-et v_row2-be; --Olvassa fel a kurzort
        Kilépni, amikor a mycur1%not talált;
        véghurok;
    véget ér, ha;
    Zárd be MyCur1; --Kapcsold ki a kurzort
vége;
válassz * a subinfo közül;

--Erős típus
deklarálni
    type curname a ref cursor return stuinfo%rowtype;
    mycur1 curname;
    v_sex stuinfo.stusex%type;
    v_row stuinfo%rowtype;
Kezdeni
    v_sex := '& nem';
    ha v_sex = 'hím', akkor
       nyisd meg a mycur1-et a stuinfo * kiválasztásához, ahol Stusex = 'hím';
    más
       nyisd meg a mycur1-et a select-hez *-hez a stuinfo-ból, ahol Stusex = 'nő';
    véget ér, ha;

    Hurok
        hozd a mycur1-et v_row-be; --Olvassa fel a kurzort
        Kilépni, amikor a mycur1%not talált;
        dbms_output.put_line('id:'|| v_row.stuid||', név: '|| v_row.stuname||', nem: '|| v_row.stusex||' Születésnap: '|| v_row.stubir);
    véghurok;
    Zárd be MyCur1; --Kapcsold ki a kurzort
vége;







Előző:"Gazdagság és sakkjáték" – a szerelem, a munkahely és a posztgraduális felvételi vizsga belső történetének feltárása
Következő:A php5.2.17-nek telepítéskor módosítania kell az 1-es cgi.force_redirect értéket 0-ra
Közzétéve 2015. 03. 19. 11:21:08 |
Félretenni lesson6.rar (920 Bytes, Letöltések száma: 0)
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com