У меня есть таблица ниже:
CREATE TABLE jun_t AS
SELECT 1 seq, -2000 amt FROM dual
UNION ALL SELECT 2, 4000 FROM dual
UNION ALL SELECT 3, -5000 FROM dual
UNION ALL SELECT 4, -2000 FROM dual
UNION ALL SELECT 5, 3000 FROM dual
UNION ALL SELECT 6, 1500 FROM dual
UNION ALL SELECT 7, -250 FROM dual
UNION ALL SELECT 8, 320 FROM dual
UNION ALL SELECT 9, -4000 FROM dual
UNION ALL SELECT 10, 10000 FROM dual
UNION ALL SELECT 11, -20000 FROM dual;
И у меня было что-то делать, поэтому я создал и выполнил программу pl / sql ниже:
DECLARE
CURSOR csr is
select seq, amt
from jun_t;
rec csr%ROWTYPE;
total jun_t.amt%TYPE;
BEGIN
OPEN csr;
total := 0;
LOOP
FETCH csr into rec;
EXIT WHEN csr%NOTFOUND;
IF (rec.amt + total) > 0 THEN
total := rec.amt + total;
ELSE
total := 0;
END IF;
dbms_output.put_line(rec.seq || ',' || rec.amt || ',' || total);
END LOOP;
END;
И результатэто:
1,-2000,0
2,4000,4000
3,-5000,0
4,-2000,0
5,3000,3000
6,1500,4500
7,-250,4250
8,320,4570
9,-4000,570
10,10000,10570
11,-20000,0
Проблема заключается в следующем.Я хочу использовать этот набор результатов в своем приложении на c #, но не могу найти способ ... Я видел пример кода, в котором используется курсор ref, но, похоже, в этом случае он не работает.
Я хочу сделать хранимую процедуру с этим кодом.
Пожалуйста, кто-нибудь научит меня, как ее решить, или скажите, что мне следует изучить.
Спасибо.