vali * stuinfost; --Varjatud kursor Alusta dbms_output.put_line('Enne päringut:'|| sql%rowcount); uuenda stuinfo komplekti stusex = 'naine'; dbms_output.put_line('Pärast päringut:'|| sql%rowcount); lõpp;
--eksplicitne kursor --1. Tavaline deklareeri kursor mycur1 on valitud * stuinfost; --defineeri kursorid --v_id stuinfo.stuid%type; --v_name stuinfo.stuname%type; --v_sex stuinfo.stusex%type; --v_bir stuinfo.stubir%type; v_row stuinfo%rowtype; Alusta ava mycur1; --Ava kursor Loop --too mycur1 v_id,v_name,v_sex,v_bir; --Liiguta kursor alla, et panna lugemisväärtus muutujasse tooge Mycur1 v_row-sse; --Loe kursor väljuda siis, kui mycur1%notfound; --dbms_output.put_line('id:'|| v_id||', nimi: '|| v_name||', sugu: '|| v_sex||' Sünnipäev: '|| v_bir); --Väljundtulemus dbms_output.put_line('id:'|| v_row.stuid||', nimi: '|| v_row.stuname||', sugu: '|| v_row.stusex||' Sünnipäev: '|| v_row.Stubir); lõpusilmus; sulge mycur1; --Lülita kursor välja lõpp;
--2. Versifier parameetritega deklareeri kursor mycur1 (v_sex stuinfo.stusex%type) valitakse * stuinfost, kus stusex = v_sex; --defineeri kursorid v_row stuinfo%rowtype; Alusta avatud mycur1('&gender'); --Ava kursor Loop tooge Mycur1 v_row-sse; --Loe kursor väljuda siis, kui mycur1%notfound; dbms_output.put_line('id:'|| v_row.stuid||', nimi: '|| v_row.stuname||', sugu: '|| v_row.stusex||' Sünnipäev: '|| v_row.Stubir); lõpusilmus; sulge mycur1; --Lülita kursor välja lõpp;
--3. Ringikujuline kursor deklareeri kursor mycur1 on valitud * stuinfost; --defineeri kursorid Alusta v_row jaoks Mycur1-s Loop dbms_output.put_line('id:'|| v_row.stuid||', nimi: '|| v_row.stuname||', sugu: '|| v_row.stusex||' Sünnipäev: '|| v_row.Stubir); lõpusilmus; lõpp;
--4. Uuenda andmeid kursoriga deklareeri kursor Mycur1 on valitud * stuinfo seast uuenduseks; --defineeri kursorid Alusta v_row jaoks Mycur1-s Loop kui v_row.stuid = '003', siis kustuta stuinfost, kus on praegu mycur1; else uuenda stuinfo komplekt Stusex = 'mees', kus Mycur1 vool; lõpp kui; lõpusilmus; lõpp;
vali * stuinfost; uuenda stuinfo komplekt stusex = 'naine', kus stuid = '002';
--viitekursor --1. Nõrk tüüp deklareeri type curname on ref cursor; --määra kursoritüüp (curname on tüübi nimi) mycur1 curname; -- v_sex stuinfo.stusex%type; v_row stuinfo%rowtype; v_row2 subinfo%rowtype; Alusta v_sex := '& sugu'; kui v_sex = 'isane', siis ava mycur1, et valida * stuinfost, kus stusex = 'mees'; Loop tooge Mycur1 v_row-sse; --Loe kursor väljuda siis, kui mycur1%notfound; dbms_output.put_line('id:'|| v_row.stuid||', nimi: '|| v_row.stuname||', sugu: '|| v_row.stusex||' Sünnipäev: '|| v_row.Stubir); lõpusilmus; else ava mycur1, et valida * alaminfost; Loop too Mycur1 v_row2-sse; --Loe kursor väljuda siis, kui mycur1%notfound; lõpusilmus; lõpp kui; sulge mycur1; --Lülita kursor välja lõpp; vali * alaminfo hulgast;
--Tugev tüüp deklareeri type curname on ref cursori tagastamine stuinfo%rowtype; mycur1 curname; v_sex stuinfo.stusex%type; v_row stuinfo%rowtype; Alusta v_sex := '& sugu'; kui v_sex = 'isane', siis ava mycur1, et valida * stuinfost, kus stusex = 'mees'; else ava mycur1, et valida * stuinfost, kus stusex = 'naine'; lõpp kui;
Loop tooge Mycur1 v_row-sse; --Loe kursor väljuda siis, kui mycur1%notfound; dbms_output.put_line('id:'|| v_row.stuid||', nimi: '|| v_row.stuname||', sugu: '|| v_row.stusex||' Sünnipäev: '|| v_row.Stubir); lõpusilmus; sulge mycur1; --Lülita kursor välja lõpp;
|