Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.misc -> Re: pl/sql help.....again
It looks like you want to loop through the cursor and calculate the refund
value for each record in the cursor. Look up cursor for loops in the docs or
any pl/sql reference and this should get you started.
having said that if this is a production piece of code why would you use pl/sql at all, a simple sql statement will perform better.
-- Niall Litchfield Oracle DBA Audit Commission UK "clint" <c_macnichol_at_hotmail.com> wrote in message news:HUfia.11803$Jf.1153190_at_ursa-nb00s0.nbnet.nb.ca...Received on Tue Apr 01 2003 - 07:13:46 CST
> hello,
>
> I have created a series of tables.......as part of that I am trying to
> create a pl/sql script...that will take some information from one
> table....manipulate it and insert it into another table....
>
> The calculation always equals zero...what am i doing wrong?
>
> here is my pl/sql script...
>
> DECLARE
> CURSOR c_MILEAGE_CAL IS
> SELECT EMPLO_ID, NUM_MILES, MIL_ALLOWANCE, ENTRY_DATE, DESCR
> FROM MILE_LOG;
> V_EMPLOID MILE_LOG.EMPLO_ID%TYPE :=20029;
> V_NUM_MILES MILE_LOG.NUM_MILES%TYPE;
> V_CENTSPERMILE MILE_LOG.MIL_ALLOWANCE%TYPE;
> V_DATE DATE;
> V_DESCR MILE_LOG.DESCR%TYPE;
> V_REFUND NUMBER(6);
> BEGIN
> OPEN c_MILEAGE_CAL;
> FETCH c_MILEAGE_CAL INTO
> V_EMPLOID, V_NUM_MILES, V_CENTSPERMILE, V_DATE, V_DESCR;
>
> /* I just want to calculate this simple equation*/
> V_REFUND := V_NUM_MILES * V_CENTSPERMILE;
>
> INSERT INTO EXPENSE_LOG
> VALUES(EXPLOG_COUNT_SEQ.NEXTVAL,V_EMPLOID,V_EMPLOID ,V_REFUND,V_DATE,
> V_DESCR, V_NUM_MILES );
> CLOSE c_MILEAGE_CAL;
> COMMIT;
> END;
>
>
>