anoniem Geplaatst: 27 februari 2002 Delen Geplaatst: 27 februari 2002 Oke heren, Op zoek naar absolute oracle kenners! Wens: In een oracle stored procedure wil ik het volgende voor elkaar krijgen. Ik wil een reference cursor krijgen (teneinde ado 2.7 te kunnen gebruiken in VB) naar een zelf gedefinieerde tabel, die ik vervolgens vul uit de database. De bedoeling is dus dat ik een set aan gegevens ophaal, voor elk record uit deze set een berekening uitvoer, vervolgens de opgehaalde set + berekening opsla in de temporary table, de volgende verwerk en tot slot de temporary table retourneer door de reference cursor. Indien er iemand is die enige voorbeelden aan kan tonen, dan kom ik er wel uit. Groeten, Tazzie Quote Link naar reactie
anoniem Geplaatst: 27 februari 2002 Auteur Delen Geplaatst: 27 februari 2002 Niemand? Quote Link naar reactie
anoniem Geplaatst: 27 februari 2002 Auteur Delen Geplaatst: 27 februari 2002 ahhh, en als ik nu alsjeblieft zeg? Quote Link naar reactie
anoniem Geplaatst: 27 februari 2002 Auteur Delen Geplaatst: 27 februari 2002 ok, laten we eens proberen... CREATE OR REPLACE PROCEDURE naam_1 AS variable-gedeelte; CURSOR naam_2 IS select * from zelfgedefinieerde_tabel; BEGIN OPEN naam_2; LOOP FETCH naam_2 into var1, var2,...; EXIT WHEN naam_2%NOTFOUND; bewerkingen op bv. de variabelen...; insert into temporarytable_1 values(var1, var2,...); END LOOP; CLOSE naam_2; COMMIT; END naam_1; Hiermee ben je al op goeie weg. Quote Link naar reactie
anoniem Geplaatst: 28 februari 2002 Auteur Delen Geplaatst: 28 februari 2002 [quote:e49c56cdbb] Op 27-02-2002 20:52, schreef abraracourcix: ok, laten we eens proberen... CREATE OR REPLACE PROCEDURE naam_1 AS variable-gedeelte; CURSOR naam_2 IS select * from zelfgedefinieerde_tabel; [/quote:e49c56cdbb] Ho, waar is die zelfgedefinieerdde tabel gedefinieerd??? [quote:e49c56cdbb] BEGIN OPEN naam_2; LOOP FETCH naam_2 into var1, var2,...; EXIT WHEN naam_2%NOTFOUND; bewerkingen op bv. de variabelen...; insert into temporarytable_1 values(var1, var2,...); [/quote:e49c56cdbb] Haal het nu uit mijn zelfgedefinieerde tabel en plaats het in een temporarytable die hier ook uit de lucht komt vallen. Waar wordt deze gedeclareerd? [quote:e49c56cdbb] END LOOP; CLOSE naam_2; COMMIT; END naam_1; Hiermee ben je al op goeie weg. [/quote:e49c56cdbb] Een en ander begrijp ik dus niet helemaal... Quote Link naar reactie
anoniem Geplaatst: 28 februari 2002 Auteur Delen Geplaatst: 28 februari 2002 Ho, waar is die zelfgedefinieerdde tabel gedefinieerd??? zelfgedefinieerde tabel?? dan veronderstel ik dat je hem toch zelf gedefinieerd hebt...(aangemaakt en gevuld voor en buiten de Stored Procedure) [quote:64ee32d090] BEGIN OPEN naam_2; LOOP FETCH naam_2 into var1, var2,...; EXIT WHEN naam_2%NOTFOUND; bewerkingen op bv. de variabelen...; insert into temporarytable_1 values(var1, var2,...); [/quote:64ee32d090] Haal het nu uit mijn zelfgedefinieerde tabel -> steek het in de variabelen vars1...zoveel je er nodig hebt(afhankelijk van je kolommen die je in de cursor vraagt). Doe op deze variabelen bewerkingen. en plaats het in een temporarytable die hier ook uit de lucht komt vallen. Waar wordt deze gedeclareerd? -> die is idd nog niet gedefinieerd... wat kan je doen? cfr. de zelfgedefinieerde tabel maar dan zonder gegevens en enkel de kolommen die je nodig hebt. Misschien kan het ook anders maar met jouw gegevens weet ik niet genoeg. [ Dit Bericht is bewerkt door: abraracourcix op 2002-02-28 09:41 ] Quote Link naar reactie
anoniem Geplaatst: 28 februari 2002 Auteur Delen Geplaatst: 28 februari 2002 Zou je eens kunnen laten zien hoe ik een reference cursor kan definieren naar die temporary table? Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen